将变量从表示层传递到逻辑层

问题描述

当我尝试让逻辑层更新表示层时我卡住了,因为我已经在表示层中初始化了 GUI 变量。尽管如此,在那之后,我找不到从逻辑层访问这些变量的方法。我不认为我应该公开所有变量才能访问它们。

我这里有一个例子:

  • 更新 multiChoicePanel 的逻辑层方法

    public void cleardisplay() {
              if (currentlydisplayedQuestion.getQuestionType() == QuestionType.MULTI_CHOICE) {
                  multiChoicePanel.cleardisplay();
              } 
             else
              ...
          };
    
  • 我已声明 multiChoicePanel 的演示层

      private JQEMultiChoiceQuestionScreen multiChoicePanel;
    

所以这里的问题是如何将 multiChoicePanel 传递给逻辑层?

解决方法

我通过在表示层中移动 clearDisplay() 解决了这个问题,并使逻辑层通过方法公开其功能。

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...