对象创建的流程分析
Class Person{
int age=20;
String name;
Person(String name,int age){
this.name=name;
this.age=age
}
}
Person p = new Person(“lining”,30)
首先加载Person类,隐式初始化后age、name 初始值为0和null,
在对age、name做显示初始化,age为20,人后new Person使用构造器初始化属性,最后P指向堆中对象的地址,P是对象的引用。
this关键字
this可以理解为一个指向当前类创建的对象的一个引用,但是该引用只能与当前对象绑定。可以通过查看this和p的hashcode一致来说明。
注:hashcode得出的并不是内存地址,而是根据地址生成的一个整数。
this的注意事项和使用细节
1.this关键字可以用来访问本类的属性、方法、构造器
2.this用于区分当前类的属性和局部变量
3.访问成员方法的语法: this.方法名(参数列表):
4.访问构造器语法: this(参数列表): 注意只能在构造器中使用(即只能在构造器中访问另外一个构造器, 必须放在第一条语句)
5.this不能在类定义的外部使用,只能在类定义的方法中使用