62,621
社区成员
发帖
与我相关
我的任务
分享
public class SuperTest {
public static void main(String[] args) {
Child c = new Child();
c.addAll();
}
}
class Parent{
public void add(){
System.out.println("A add...");
}
public void addAll(){
System.out.println("A add ALL...");
this.add();
}
}
class Child extends Parent{
@Override
public void add() {
// TODO Auto-generated method stub
System.out.println("B add...");
super.add();
}
@Override
public void addAll() {
// TODO Auto-generated method stub
System.out.println("B add ALL...");
super.addAll();
}
}
public void addAll() {
// TODO Auto-generated method stub
System.out.println("B add ALL...");
super.addAll();
}
相当于
public void addAll() {
// TODO Auto-generated method stub
System.out.println("B add ALL...");
System.out.println("A add ALL...");
this.add();
}
this指的是当前子类对象,没有变
public class SuperTest {
public static void main(String[] args) {
Child c = new Child();
c.addAll();
}
}
class Parent{
public void add(){
System.out.println("A add...");
}
public void addAll(){
System.out.println("A add ALL...");
//加上下面这句话 你的世界就变的清晰了 肯定就明白了
System.out.println(this.getClass().getName()); // 打印出来Child 你难道还会不明白么?
this.add();
}
}
class Child extends Parent{
@Override
public void add() {
// TODO Auto-generated method stub
System.out.println("B add...");
super.add();
}
@Override
public void addAll() {
// TODO Auto-generated method stub
System.out.println("B add ALL...");
super.addAll();
}
}