原则:当方法形参与成员变量重名时,必须使用this指针来调用类的成员。
public class practice { public static void main(String[] args) { Sun s =new Sun(); s.show(); } } class Dad{ public int age; Dad(int age) { this.age = age; } void show(){ System.out.println(age); } } class Sun extends Dad{ public int age=10; public Sun() { super(35); } }
方法调用变量,会按照顺序进行搜索,根据就近原则,找到形参就不会找成员,如果不写this指针,age=age中的两个age将全部是形参,就无法完成对成员变量age的赋值。