我有一个名为“ ConstituentSet”的类。它有一个方法,即“ getNucleusInConstSet()”,其输出将来自“ Proposition”类。新的“提议”类具有另一个方法,即“ getProperty()”。我想知道“ ConstituentSet”类中“ Proposition Nucleus”的Propertry是什么。但是我不知道该怎么办。
我写如下,但它不起作用。 (ConstituentSet.getNucleusInConstSet()).getProperty())

public class ConstituentSet{
    // Constructor
    private Proposition nucleusInConstSet;

    public Proposition getNucleusInConstSet() {
       return nucleusInConstSet;
    }
}



public class Proposition{

   //Constructor
   private Property property;

   public Property getProperty() {
     return this.type;
   }
}

最佳答案

你有:

(ConstituentSet.getNucleusInConstSet()).getProperty()


但是您需要调用ConstituentSet的实例

例如

ConstituentSet cs = new ConstituentSet();
cs.getNucleusInConstSet().getProperty();


请注意,这种习惯用法(链接方法调用)可能会很痛苦。如果您的方法之一返回null,则很难理解它是哪一种(不使用调试器)。另请注意,形式a().b().c().d()的调用是破坏封装的一种微妙形式(a显示其具有b,显示其具有c等)。

09-11 18:08