Java类的成员函数调用顺序

 1 class A
 2 {
 3  public A()
 4  {
 5   System.out.println("----------A 构造-------------");
 6  }
 7  static  void sb()
 8  {
 9   System.out.println("----------A.sb() 静态块-------------");
10  }
11  {
12   System.out.println("----------A 语句块-------------");
13  }
14 }
15 
16 class B extends A
17 {
18  public B()
19  {
20   System.out.println("----------B 构造-------------");
21  }
22  static void sb()
23  {
24   System.out.println("----------B.sb() 静态块-------------");
25  }
26  {
27   System.out.println("----------B 语句块-------------");
28  }
29 }
30 
31 public class initSequence 
32 {
33  public static void main(String[] args)
34  {
35   System.out.println("First time new: ");
36   B b=new B();
37   System.out.println("Second time new: ");
38   B b1=new B();
39   System.out.println("Call the static functions:");
40   A.sb();
41   b.sb();
42  }
43 }

 

输出:

First time new:
----------A 语句块-------------
----------A 构造-------------
----------B 语句块-------------
----------B 构造-------------
Second time new:
----------A 语句块-------------
----------A 构造-------------
----------B 语句块-------------
----------B 构造-------------
Call the static functions:
----------A.sb() 静态块-------------
----------B.sb() 静态块-------------

 

posted on 2014-12-23 09:44  醉清风JM  阅读(727)  评论(0编辑  收藏  举报

导航