Java 是否可以从内部类实例访问外部类实例?

Java 是否可以从内部类实例访问外部类实例?,java,Java,假设我有一个具有内部静态类的类 public class A { public static class B { } } 在代码中的其他地方有一个B类实例,我可以访问A类实例吗?否。由于您声明了Bstatic,因此没有对A的引用。否。由于您声明了Bstatic,因此没有对A的引用。您不能B是一个静态类,它的所有实例都没有绑定到a的实例 如果B不是静态的,那么它是可能的。你不能B是一个静态类,它的所有实例都没有绑定到a的实例 如果B不是静态的,那么这是可能的。只有在添加对A的显式

假设我有一个具有内部静态类的类

public class A {
    public static class B {
    }
}

在代码中的其他地方有一个B类实例,我可以访问A类实例吗?

否。由于您声明了B
static
,因此没有对A的引用。

否。由于您声明了B
static
,因此没有对A的引用。

您不能
B
是一个
静态
类,它的所有实例都没有绑定到
a
的实例


如果
B
不是
静态的
,那么它是可能的。

你不能
B
是一个
静态
类,它的所有实例都没有绑定到
a
的实例


如果
B
不是
静态的
,那么这是可能的。

只有在添加对A的显式引用时才有可能,例如:

public class A {
    public static class B {
        private final A a;

        public B(A a){
            this.a = a;
        }
    }
}
如果内部clas B不是静态的,那么此引用将隐式可用(使用不同的语法):


只有在添加对的显式引用时才有可能,例如:

public class A {
    public static class B {
        private final A a;

        public B(A a){
            this.a = a;
        }
    }
}
如果内部clas B不是静态的,那么此引用将隐式可用(使用不同的语法):