【问题标题】:Object Oriented: A difficult case in accessing instances面向对象:访问实例的困难案例
【发布时间】:2014-02-06 16:28:35
【问题描述】:

我有三个班级:班级A班级B班级C

A类的代码中,创建了B类的实例和C类的实例。

Class A{

    public A{

        B b = new B();
        C c = new C();

    }

}

BC 类具有 get()set() 方法,允许接收有关其实例的信息并操作这些类的实例。

因此,A 类可以访问bc,例如:

Class A{

    public A{

        B b = new B();
        C c = new C();

        int cLife = c.getLifePoints():

    }

}

我的问题是这样的:

A 可能能够访问实例bc,但是我也需要类B 才能访问实例c(通过“访问”是指获取有关实例的信息或对其进行操作)。

我不能简单地在课堂上写B

int cLife = A.c.getLifePoints();

这是因为A 类不是静态类。它有一个在另一个类 D 中创建的实例。

但是假设由于某种原因我无法访问类A 的实例,以便从那里检索对c 的引用。

还有其他方法可以从类B 中访问实例c?请给我最“标准”的方式。任何其他方式也会很棒。

谢谢

【问题讨论】:

    标签: class oop instance


    【解决方案1】:

    如果您希望B 访问在A 中创建的C 实例,则需要将其引用传递给B 实例,例如:

        C c = new C();
        B b = new B(c);
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-10-02
      • 1970-01-01
      • 2014-01-14
      • 1970-01-01
      • 2017-05-12
      • 1970-01-01
      相关资源
      最近更新 更多