0

我有C1级和C2级。C1 有一个公共布尔变量 b1。

b1 的值在 C1 中设置,然后我在 C1 中创建 C2 类的对象。即在C1我有:

b1 = true; 
C2 c2 = new C2(); 

现在在 C2 的构造函数中,我想根据 b1 的值做出决定。如何在 C2 的构造函数中访问 b1 的值(它是 C1 类的变量)?C2 的构造函数不能有任何争论。

谢谢

4

3 回答 3

3

如果 C2 类被定义为 C1 的内部类,您可以像这样访问它的外部类:

C1.this.b1
于 2012-06-22T11:24:46.133 回答
0

有几种方法可以做到这一点。您也可以将 b1 设为静态,@Logard 建议的内容,或者 C1 可以设为单例:

public enum C1{
    INSTANCE;

    public boolean b1=false;  

}

public class C2{

    public C2(){
        System.out.println(C1.INSTANCE.b1);
    }

}
于 2012-06-22T11:44:20.510 回答
-1

在 C2 中创建 C1 的对象,然后检查。

boolean check=new C1().b1

于 2012-06-22T11:30:13.733 回答