快速业务通道

深入理解Java初始化的含义 - 编程入门网

作者 佚名技术 来源 NET编程 浏览 发布时间 2012-06-22
: aload_0    1: invokespecial #1; //Method java/lang/Object."":()V    4: aload_0    5: aload_0    6: ldc #2; //String s1    8: invokevirtual #3; //Method rt:(Ljava/lang/String;)Ljava/lang/String;    11: putfield #4; //Field s1:Ljava/lang/String;    14: aload_0    15: ldc #5; //String s2    17: putfield #6; //Field s2:Ljava/lang/String;    20: ldc #7; //String s3    22: astore_1    23: aload_0    24: ldc #2; //String s1    26: putfield #4; //Field s1:Ljava/lang/String;    29: return    public debug.Test(java.lang.String);    Code:    0: aload_0    1: invokespecial #1; //Method java/lang/Object."":()V    4: aload_0    5: aload_0    6: ldc #2; //String s1    8: invokevirtual #3; //Method rt:(Ljava/lang/String;)Ljava/lang/String;    11: putfield #4; //Field s1:Ljava/lang/String;    14: aload_0    15: ldc #5; //String s2    17: putfield #6; //Field s2:Ljava/lang/String;    20: ldc #7; //String s3    22: astore_2    23: new #8; //class java/lang/RuntimeException    26: dup    27: invokespecial #9; //Method java/lang/RuntimeException."":()V    30: athrow    java.lang.String rt(java.lang.String);    Code:    0: aload_1    1: areturn    public static void main(java.lang.String[]);    Code:    0: new #10; //class debug/Test    3: dup    4: ldc #11; //String    6: invokespecial #12; //Method "":(Ljava/lang/String;)V    9: pop    10: return   }

明白了上面这些知识,我们来做一个小测试吧:

public class Test2 extends Test1 {   System.out.print("1"); } Test2(){   System.out.print("2"); } static{   System.out.print("3"); } {   System.out.print("4"); } public static void main(String[] args) {   new Test2(); } } class Test1 {   Test1(){   System.out.print("5"); } static{   System.out.print("6"); } }

试试看能清楚打印的顺序吗?如果没有new Test2()将打印什么?

凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!

分享到: 更多

Copyright ©1999-2011 厦门凌众科技有限公司 厦门优通互联科技开发有限公司 All rights reserved

地址(ADD):厦门软件园二期望海路63号701E(东南融通旁) 邮编(ZIP):361008

电话:0592-5908028 传真:0592-5908039 咨询信箱:web@lingzhong.cn 咨询OICQ:173723134

《中华人民共和国增值电信业务经营许可证》闽B2-20100024  ICP备案:闽ICP备05037997号