- class Super
- {
- int i = 20;
- public Super(String a)
- {
- i=1;
- }
- public Super() //第二步,初始化父类并且执行构造方法, i=22
- {
- i += 2;
- }
- }
- class Demo extends Super
- {
- static int i = 4; //在这里,子类和父类具有同名变量,如果没
- //这里没有定义 static int i = 4; 下面这个语句将给父类变量赋值
- //由于在子类中定义了 这个变量,所以下面语句赋值给本类中的i 而最后
- //打印的是父类中的 i.
- public Demo (String a)
- {
- i = 5;
- }
- public static void main(String[] args)
- {
- Super d=new Demo("A"); //第一步
- System.out.println(d.i); //第三步,打印父类中变量
- }
- }
复制代码 |