我是relativly新Java和experimantating比特使用JavaFX使用其他类“覆盖”的变量的方法
我想同时使用的方法,由B类到可变从类A改变
主:这就是主类,它包含了所有需要的东西(显示primaryStage等),它确实有一个构造函数,所以其不创建一个实际的“主客体”
public class Main extends Application {
Sub sub = new Sub();
int a;
// stuff
public void aMethod() {
sub.subMethod();
}
}
子:这个类只surpose是为了chan GE的变量,它不包含一个构造函数来创建一个“子对象”
public class Sub {
//stuff
subMethod(){
int a = 5;
}
,如果我放线Main main;
在子类中,程序会给出我一个空指针异常,如果我调用subMethod()。 好吧......我猜因为我没有真正创建主要对象......迄今为止这么好。
但是...如果我把该行Main main = new Main();
程序甚至不会启动给我一个“例外同时运行的应用程序”的错误
奇怪的事情虽然是,如果我放线Main main = new Main();
的子方法。 ..
subMethod(){
Main main = new Main();
int a = 5;
}
...该死的东西实际上工作...(以及它的慢,估计是因为其创建新对象方法的调用每一个)
为什么会这样?
以及它是如何正确完成的? :) (其他类的使用方法,“覆盖”变量)
问候 红
它实际上并不工作,它只是将你设置为5的数字编译成不同于'Main'类中的那个。此外,您在该方法中使用的“Main”与另一个不是同一个实例。 – twain249 2012-04-17 16:20:48
你能提供你程序的_entire_源吗?现在还不清楚。 – 2012-04-17 16:20:54