java - 依次调用不同类的 get 方法

标签 java

我有一个名为“ConstituentSet”的类。它有一种方法,即“getNucleusInConstSet()”,其输出来自“Proposition”类。新类“Proposition”有另一个方法,即“getProperty()”。我想知道“ConstituentSet”类中我的“命题核心”的属性是什么。但我不知道该怎么做。 我写如下,但它不起作用。 (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等)

关于java - 依次调用不同类的 get 方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17702259/

相关文章:

java - Spring 启动 java.sql.SQLException : Field 'id' doesn't have a default value

java - 从不同类调用方法时出现 NullPointerException

java - 从文本文件读取时显示符号 '  '

java - 如何使用范围目录访问权限系统读取文件?

java - 是否有任何 Maven 插件可以发送 HTTP 请求并验证结果?

java - 通过 JavaMail 读取 POP3 消息仅返回尾随句点,而不返回内容

java - 如何在不使用 system.exit() 的情况下,在输入 "quit"时使用一段时间不断要求用户输入并退出程序?

java - 如何在gwt中设置docklayoutpanel borderwidth

java - 通过 JAXB 将链接插入到 RESTEasy XML 结果中

Java JSONObject 获取 child