您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 信息化管理 > 从头认识java-4.7 构造器初始化(3)
从头认识java-4.7构造器初始化(3)接着上一章节。(4)显性初始化静态域通过静态代码块来初始化某些属性域。[java]viewplaincopy1.packagecom.ray.testobject;2.3.publicclassTest{4.privatestaticintid;5.6.privatestaticStringname;7.8.static{9.id=0;10.name=abc;11.System.out.println(id:+id);12.System.out.println(name:+name);13.}14.15.publicstaticintgetId(){16.returnid;17.}18.19.publicstaticvoidmain(String[]args){20.//newTest();21.System.out.println(Test.getId());22.}23.}如果我们把newTest()放开,得到也是下面的结果。因为代码块只会执行一次。输出:id:0name:abc0我们下面在给一个例子:[java]viewplaincopy1.packagecom.ray.testobject;2.3.publicclassTest{4.5.privatestaticintid=0;6.privatestaticStringname;7.8.static{9.System.out.println(id:+id);10.name=abc;11.System.out.println(name:+name);12.}13.14.publicTest(){15.System.out.println(createTest);16.}17.18.publicstaticvoidmain(String[]args){19.newTest();20.newTest();21.}22.}输出:id:0name:abccreateTestcreateTest(5)初始化非静态域[java]viewplaincopy1.packagecom.ray.testobject;2.3.publicclassTest{4.5.privateStringname;6.7.{8.name=abc;9.System.out.println(name:+name);10.}11.12.publicstaticvoidmain(String[]args){13.newTest();14.newTest();15.}16.}输出:name:abcname:abc初始化非静态域,每一次的new,代码块都会执行一次。总结:这一章节主要讨论了显性初始化静态域,以及初始化非静态域。这一章节就到这里,谢谢。-----------------------------------目录
本文标题:从头认识java-4.7 构造器初始化(3)
链接地址:https://www.777doc.com/doc-2711956 .html