在 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'。这表明不同的外部类对象操作内部静态类时,它们访问的是独立的静态内部类,互相之间的操作不会相互影响。

Java 内部静态类:不同外部类对象间操作的影响

原文地址: https://www.cveoy.top/t/topic/pd25 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录