package com.cisco.learning;
class Test {
static Object object = new Object();
static{
System.out.println("12");
}
//静态域或静态代码块只加载一次
}
public class TestStatic {
public static void main(String[] args) {
/*12
java.lang.Object@14384c2
java.lang.Object@14384c2
java.lang.Object@14384c2
java.lang.Object@14384c2
java.lang.Object@14384c2*/
System.out.println(Test.object);
Test testOne = new Test();
System.out.println(testOne.object);
Test testTwo = new Test();
System.out.println(testOne.object);
System.out.println(testTwo.object);
}
}
本文详细探讨了Java中的静态域和静态代码块的特性,包括它们的加载机制、作用范围以及如何在不同实例间共享状态。通过实例演示,展示了静态代码块在初始化资源或常量时的高效应用。
382

被折叠的 条评论
为什么被折叠?



