A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© ln0491 中级黑马   /  2015-8-29 11:17  /  290 人查看  /  1 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

  1. class HelloA {

  2.     public HelloA() {
  3.         System.out.println("HelloA");
  4.     }
  5.    
  6.     { System.out.println("I'm A class"); }
  7.    
  8.     static { System.out.println("static A"); }

  9. }

  10. public class HelloB extends HelloA {
  11.     public HelloB() {
  12.         System.out.println("HelloB");
  13.     }
  14.    
  15.     { System.out.println("I'm B class"); }
  16.    
  17.     static { System.out.println("static B"); }
  18.    
  19.     public static void main(String[] args) {
  20.      new HelloB();
  21.    }

  22. }
复制代码


结果:
static Astatic BI'm A classHelloAI'm B classHelloB对象的初始化顺序:(1)类加载之后,按从上到下(从父类到子类)执行被static修饰的语句;(2)当static语句执行完之后,再执行main方法;(3)如果有语句new了自身的对象,将从上到下执行构造代码块、构造器(两者可以说绑定在一起)

1 个回复

倒序浏览
很有意思,回去试试
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马