我创建了一个扩展JButton的类,该类传递给另一个类构造函数。但是,当我尝试访问按钮的'getSubmitted()'方法时,它弹出一条错误消息,提示'无法解析方法getSubmitter()'...
我不明白为什么会发生这种情况,因为方法和类都是公共的,而Button分配给了变量...

public class ButtonSubmit extends JButton{
   private boolean submitted;
/*
...
*/
public boolean getSubmitted(){
   return this.submitted;
}

public class ServerConnector{
   privaet JButton submitBtn;
   public ServerConnector(JButton submitBtn){
      this.submitBtn = submitBtn;
   }
   /*..*/
   public void start(){
      while(true){
         if(this.submitBtn.getSubmitted()){
             /**/
          }
      /**/
      }
    }
}

最佳答案

您需要在构造函数中和字段中使用ButtonSubmit类型:

public class ServerConnector{
   private ButtonSubmit submitBtn;
   public ServerConnector(ButtonSubmit submitBtn){
      this.submitBtn = submitBtn;
   }
   /*..*/
   public void start(){
      while(true){
         if(submitBtn.getSubmitted()){
             /**/
          }
      /**/
      }
    }
}


您正在尝试访问没有所需方法的类型(JButton)的成员。因此,您需要实际具有此方法的类型ButtonSubmit

关于java - 在其他类中无法访问Public Getter-Java,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/50394343/

10-12 04:04