参考http://www.cnblogs.com/hasse/p/5023392.html
this关键字
1.普通的直接引用,this指的就是当前对象本身
2.形参和成员名字重名,用this来区分
下列例子:this.id代表类中的成员变量
id代表形参
public class Student {
private Integer id;
public Integer getId() {
return id;
}
public void setId(Integer id) {
this.id = id;
}
}
3.引用构造函数
super关键字
1.普通的直接引用
super指向自己的父类的一个指针,super.xxx引用父类的成员
2,子类中的成员变量方法与父类中的成员变量方法重名
public class Person {
String name;
void value() {
name="person";
}
public static void main(String[] args) {
Man m=new Man();
m.value();
}
}
class Man extends Person{
String name;
void value() {
name="man";
super.value(); //调用父类的同名value方法
System.out.println(name); //输出本类的name变量
System.out.println(super.name); //输出父类的同名name变量
}
}
3.引用构造函数
super(参数):调用父类的构造函数,应该放在第一行
this(参数):调用本类的其他的构造函数,应该放在第一行
this与super关键字的异同