转载于 : http://www.verejava.com/?id=17159596599630
/**
this: 代表当前类的引用
1. 当局部变量和成员变量同名时, 成员变量要加 this 限定
2. 实例化时 可以用 this 调用当前类的构造方法, 必须写在第一行
3. 可以用 this 调用当前类的 普通方法
super : 代表当前父类的引用
1. 实例化子类时, 可以用 super 调用父类的 非私有方法
2. 实例化子类时. 可以用 super 调用父类的 构造方法 , 必须写在第一行
3. 在子类的方法中 , 可以用 supe 调用父类的 非私有方法.
*/
public class Test1 {
public static void main(String[] args) {
// 实例化 农夫
Father father = new Father();
father.setName("农夫");
father.setAge(90);
System.out.println(father.getAge() + " 岁 " + father.getName() + " 有 " + father.getWealth());
Father father = new Father("农夫", 90);
System.out.println(father.getAge() + " 岁 " + father.getName() + " 有 " + father.getWealth());
Son son = new Son("农夫", 90);
System.out.println("儿子知道父亲的 : " + son.getAge() + " 岁 " + son.getName() + " 有 " + son.getWealth());
son.work();
}
}
//父类
class Father {
private String name;
private int age;
private String wealth;
public Father() {
wealth = "100两黄金";
}
public Father(String name, int age) {
this();
this.name = name;
//this.age=age;
this.setAge(90);
}
public void work() {
System.out.println("耕地");
}
public String getWealth() {
return wealth;
}
public void setAge(int age) {
this.age = age;
}
public int getAge() {
return age;
}
public void setName(String name) {
this.name = name;
}
public String getName() {
return name;
}
}
//子类
class Son extends Father {
public Son(String name, int age) {
super(name, age);
//super.setName(name);
//super.setAge(age);
}
public void work() {
super.work();
System.out.println("儿子 寻找黄金宝藏");
System.out.println("只有通过自己的勤奋劳动, 才能得到果实 是最大的宝藏");
}
}
转载于 : http://www.verejava.com/?id=17159596599630