我是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