全面理解J2SE初始化顺序

原创|其它|编辑:郝浩|2009-03-19 08:57:25.000|阅读 398 次

概述:我们该怎样理解J2SE初始化顺序呢?让我们来看看下面这段代码吧!

# 界面/图表报表/文档/IDE等千款热门软控件火热销售中 >>

我们该怎样理解J2SE初始化顺序呢?让我们来看看下面这段代码吧!

class A{
    public String context=test();
    public static int num=getNum();
    {
      System.out.print("A3");
    }
    static{
      System.out.print("A1,");
    }
    public A(){
      System.out.print("A2,");
    }
    public String test()
    {
      String str="A.test(),";
      System.out.print(str);
      return str;
    }
    public static int getNum()//它只属于A
    {
      System.out.print("A.getNum(),");
      return 11;
    }
  }
  class B extends A{
    {
      System.out.print("c");
    }
    static{
      System.out.print("a,");
    }
    public B(){
      System.out.print("b,");
    }
    public String test()//覆盖
    {
      String str="B.test(),";
      System.out.print(str);
      return str;
    }
  public static int getNum()//它只属于B,不能覆盖
    {
      System.out.print("B.getNum(),");
      return 21;
    }
  }
  public class InitTest{
    public static void main(String[] ars){
      new B(); //执行到此处,结果: A.getNum(),A1,a,B.test(),A3A2,cb, [Page]
      System.out.println();
      new B(); //执行到此处,结果: B.test(),A3A2,cb,
   }
  }


标签:

本站文章除注明转载外,均为本站原创或翻译。欢迎任何形式的转载,但请务必注明出处、不得修改原文相关链接,如果存在内容上的异议请邮件反馈至chenjj@evget.com

文章转载自:blogeye

为你推荐

  • 推荐视频
  • 推荐活动
  • 推荐产品
  • 推荐文章
  • 慧都慧问
扫码咨询


添加微信 立即咨询

电话咨询

客服热线
023-68661681

TOP