inittester.java

来自「JAVA面向对象编程_孙卫琴yaunma」· Java 代码 · 共 42 行

JAVA
42
字号
package init;
class Base{
static int a=1;
  static{
    System.out.println("init Base");
  }
}

class Sub extends Base{
  static int b=1;
  static{
    System.out.println("init Sub");
  }
}

public class InitTester{
  static{System.out.println("init InitTester");}

/*
  public static void main(String args[]){
    System.out.println("b="+Sub.b);  //执行这行代码时,先依次初始化Base类和Sub类
  }
*/

 public static void main(String args[]){
    Base base;  //不会初始化Base类
    System.out.println("After defining base");
    base=new Base();  //执行这行代码时,初始化Base类
    System.out.println("After creating an object of Base");
    System.out.println("a="+base.a);
    System.out.println("b="+Sub.b);  //执行这行代码时,仅仅初始化Sub类
  }

}


/****************************************************
 * 作者:孙卫琴                                     *
 * 来源:<<Java面向对象编程>>                       *
 * 技术支持网址:www.javathinker.org                *
 ***************************************************/

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?