page contents

指出下面程序的运行结果:

轩辕小不懂 发布于 2021-07-22 16:25
阅读 509
收藏 0
分类:Java开发

[java] 

  1. class A{  

  2.   

  3.     static{  

  4.         System.out.print("1");  

  5.     }  

  6.   

  7.     public A(){  

  8.         System.out.print("2");  

  9.     }  

  10. }  

  11.   

  12. class B extends A{  

  13.   

  14.     static{  

  15.         System.out.print("a");  

  16.     }  

  17.   

  18.     public B(){  

  19.         System.out.print("b");  

  20.     }  

  21. }  

  22.   

  23. public class Hello{  

  24.   

  25.     public static void main(String[] args){  

  26.         A ab = new B();  

  27.         ab = new B();  

  28.     }  

  29.   

  30. }  

1365
Nen
Nen
- 程序员

执行结果:1a2b2b。创建对象时构造器的调用顺序是:先初始化静态成员,然后调用父类构造器,再初始化非静态成员,最后调用自身构造器。

请先 登录 后评论