【发布时间】:2014-08-06 14:13:31
【问题描述】:
我有 3 节课,这些都是
A : MainActivity
B:型号
C : 控制器
我正在尝试在它们之间传递值。我在 Model 类中为每个变量设置了方法。我要做的是在 MainActivity 上设置值,然后通过 Controller 类上的一些方法处理该值,并将该方法的结果再次设置为 Model 类。当我检查控制器类上的设置变量时,我得到空值。我在 MainActivity 上定义 Model 类的公共静态对象来设置值。
public class MainActivity {
public static Model model;
private Controller controller;
onCreate(){
model=new Model();
controller = new Controller ();
model.setpName("someString");
controller.doSth();
}
}
在我的模型类中
public class Model {
private String pName;
public String getpName(){return this.pName;}
public void setpName(String pName){this.pName=pName;}
private String pResult;
public String getpResult() {
return this.pResult;
}
public void setpResult(String pResult){
this.pResult=pResult;
}
}
在我的控制器类中
public class Controller {
public Model model;
public void doSth(){
model = new Model();
System.out.println(model.getpName+"");
}
}
当我检查时
System.out.println(model.getpName+"");
在控制器类上, 它返回空值。 我究竟做错了什么 ? 如何获得我在 MainActivity 上设置的值? 提前致谢。
【问题讨论】:
-
你的控制器有一个未实例化的模型..至少根据你上面的代码
-
对不起,我忘了写在这里。我真的做到了
-
请更新问题中的代码
-
也许你的控制器构造函数应该采用模型
-
你能用一些示例代码写你的建议作为答案吗?