访问没有静态

时间:2017-08-24 07:08:22

标签: java

我有2个班,B班和A

public class B

  private Car fiat;

  public boolean trueOrFalse() {
    return fiat.methodFromClassCar();
  }

在A类中,我想使用此布尔值的结果,如:

public class A

  public int xyz(){
    if (trueOrFalse()==true){
     doSomething(); 
    } 
  }

我总是静止所有,但现在我无法做到这一点。还有更好的办法吗?

在A类中创建一个新对象:

Car cr = new Car();

然后使用

cr.trueOrFalse();

好方法?但我在这里编码错了什么?

1 个答案:

答案 0 :(得分:0)

您有不同的选择:

- >有一个Car作为A类的属性

public class A{
   private Car c;
   public int xyz(){
     if (c.trueOrFalse()){    //==true is 100% useless
        doSomething(); 
     } 
  }
}

致电A test = new A(); /*then*/ test.xyz(); //c = new Car(); in constructor of A

- >给方法一个Car作为参数

public class A{

   public int xyz(Car c){
     if (c.trueOrFalse()){   
        doSomething(); 
     } 
  }

致电A test = new A(); /*then*/ test.xyz(new Car()); or Car c = new Car(); /*then*/test.xyz(c);