本帖最后由 张云杰 于 2013-1-11 22:06 编辑
public class Test {
private int num = 10;
public Test() {
System.out.println(++num); //这是父类的构造方法,也是先进行加减操作,然后打印输出
}
public void show() {
System.out.println(++num); //首先这里进行了++操作, 如果有方法调用的话, 这里要先加减然后输出
}
}
public class Test1 extends Test {
int num = 4 ;
public void Test() { //这个方法没调用
System.out.println(num);
}
@Override
public void show() {
super.show(); //这个意思是说 调用父类里的show方法
System.out.println(++num);
}
public static void main(String[] args) {
Test1 test = new Test1(); //当子类重新new了, 那么首先它会去寻找父类的构造方法(死记),
test.show();//接着调用了子类自己的方法;
//总结下: 先是调用父类里的构造方法, 然后再调用子类自己的方法,子类重写父类的方法,默认调用子类方法, 因为子类里有个super方法,
//super意思是说父类的意思, 调用了父类的方法,然后再执行打印 , 所以..如果程序是按照我这样写的话, 默认 答案应该是 11 ,12 ,5
//++的意思是先加减,后执行操作;
}
}
|