1.类对象构造方法(类和对象构造函数)

  本篇文章为你整理了1.类&对象&构造方法(类和对象构造函数)的详细内容,包含有类的构造方法对应着对象的属性 类和对象构造函数 类 对象 实例 类中对象的组成包括 1.类&对象&构造方法,希望能帮助你了解 1.类&对象&构造方法。

  堆中存放对象和非静态变量。

  在使用new关键字产生对象后,对象会存放进堆中进行管理,对象名就是对象在堆中的地址。

  对象把被它调用的成员变量直接存储到堆中。

  对象把被它调用的成员方法地址存储到堆中,间接调用。

  堆中的内容会被垃圾回收器回收。

  1.3 栈(stack)

  调用的方法都会进入到栈中(包括main方法),方法执行完成就出栈。若调用的是对象的方法,则会先进入堆中找到这个方法的地址,再根据地址进入方法区进行调用。

  2. 对象作为方法的参数和返回值

  
成员变量位于方法外,可供整个类使用;局部变量位于方法内,仅它所在的方法可使用。

  成员变量有默认值null,定义时可不赋值;局部变量没有默认值,定义时必须赋值。

  3.2 内存管理

  由于成员变量在类中定义,而类实例化为对象后是进入堆中,故成员变量是在堆中进行管理。

  局部变量在方法中定义,方法是在栈中进行管理,故局部变量也在栈中进行管理。

  3.3 生命周期

  局部变量在栈中,故最终随方法出栈以结束生命周期,周期较短。

  成员变量在堆中,故最终以垃圾回收的方式结束周期,周期较长。

  3.4 this关键字的使用

  若某个类中,局部变量的名称和成员变量名称相同,则可使用this关键字对局部变量进行标识,以区分两个变量。

  若有多个类,则this表示的是造成重名的那个类。

  4. private型变量的访问

  若类中有变量private int age,则在类以外无法直接访问这个变量。

  若要在类外访问private型变量age,需在类中定义setAge()和getAge()两个方法,按格式要求,变量名age的首字母必须为大写(idea中使用alt+insert可快速创建)。

  setAge()和getAge()方法中可编写访问控制语句。

  5. 构造方法

  构造方法用于创建对象,若默认的构造方法无法满足使用需求,可自定义构造方法,以替代默认方式,在创建对象时提供额外的功能(实现逻辑、为变量赋值等)。

  
构造方法可进行重载(可创建多个同名构造方法,方法名称相同,但参数列表不同,使用时根据参数列表进行区分)。

  
public Student(String name,int age){

   System.out.println("My name is"+name+", Im "+age+"years old");

  

 

 

  
this("java",18) ;//无参构造方法中调用有参构造方法

   System.out.println("Im a student");

   public Student(String name,int age){

   System.out.println("My name is "+name+", Im "+age+" years old");

   /*输出结果:

   My name is java, Im 18 years old

   Im a student

  

 

 

  以上就是1.类&对象&构造方法(类和对象构造函数)的详细内容,想要了解更多 1.类&对象&构造方法的内容,请持续关注盛行IT软件开发工作室。

郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。

留言与评论(共有 条评论)
   
验证码: