当局部定义一个name,那么这两个name都是局部name,局部当中有,就在局部当中找,局部没有就在成员变量里找。
this代表本类的对象,代表所在函数所属对象的引用,
哪个对象在调用this所在的函数,this就代表哪个对象。
//建立p1对象,到Person1(String name)中进行初始化,这个时候构造函数被对象p1所调用,这时候this就代表p1,xiaoli就赋值给p1对象的name(p.name=name)。
public class Test1 {
public static void main(String[] args) {
Person1 p1=new Person1("xiaoli");
p1.speak();
}
}
class Person1{
private String name;
private int age;
Person1(String name){
this.name=name;
}
public void speak(){
System.out.println("name="+name+",age="+age);
}
}
// name=xiaoli,age=0
|