Java 内部静态类:不同外部类对象间操作的影响
在 Java 中,内部静态类是在外部类中定义的静态类。与非静态内部类不同,静态内部类不依赖于外部类的实例。因此,不同的外部类对象操作内部静态类不会相互影响。
每个外部类对象都有自己的状态和数据,与其他对象是相互独立的。因此,当不同的外部类对象操作内部静态类时,它们访问的是独立的静态内部类,互相之间的操作不会相互影响。
以下是一个示例代码,说明不同外部类对象操作内部静态类不会相互影响:
public class OuterClass {
private static String message = 'Hello';
public static class InnerStaticClass {
public void printMessage() {
System.out.println(message);
}
}
public static void main(String[] args) {
OuterClass outer1 = new OuterClass();
OuterClass outer2 = new OuterClass();
outer1.message = 'Hello World';
InnerStaticClass inner1 = new InnerStaticClass();
InnerStaticClass inner2 = new InnerStaticClass();
inner1.printMessage(); // 输出:Hello
inner2.printMessage(); // 输出:Hello
}
}
在上述代码中,我们创建了两个外部类对象 outer1 和 outer2。然后,我们修改了 outer1 对象的 message 属性。但是,当我们分别创建内部静态类的两个对象 inner1 和 inner2,并调用它们的 printMessage 方法时,它们都输出了'Hello',而不是'Hello World'。这表明不同的外部类对象操作内部静态类时,它们访问的是独立的静态内部类,互相之间的操作不会相互影响。
原文地址: https://www.cveoy.top/t/topic/pd25 著作权归作者所有。请勿转载和采集!