this
概念:
代表本类对象的一个引用对象
构造函数中,this()必须放第一行。
使用场景:当局部变量和成员变量重名的时候,调用成员变量
this代表本类对象的一个引用. 相当于底层帮你创建了本类的对象,如:Demo this = new Demo();
this可以调用本类的成员 -- 包括成员变量和成员方法
public class C4 {
public static void main(String[] args) {
Demo d = new Demo();
d.test();
d.setName("jack")
System.out.println(d.a);//输出成员变量a = 20
//--构造方法互相调用
//new Demo2(10);
new Demo2();
}
}
class Demo{
private String name;
public void setName(String name){
this.name = name;
//this调用成员变量并赋值
}
int a= 20;//成员变量
public void test(){
int a = 10;//局部变量
System.out.println(a);// 10 就近
System.out.println(name);//private String name null
System.out.println(this.a);//使用了成员变量
//this 代表本类对象的一个引用
//可以调用本类的成员
}
}
//--构造方法互相调用
//构造方法间,想要互相调用,可以使用this([参数])
//this关键字 如果出现在构造方法里 必须是第一句语句!!
class Demo2{
public Demo2(){
this(2);
System.out.println("无参构造方法");
}
public Demo2(int a ) {
//含参构造 调用无参构造
//this();//必须在第一行
System.out.println("含参构造"+a);
}
}
访问控制符
原文:https://www.cnblogs.com/liang-shi/p/13817088.html