在類Myclass
中,類Help
作爲對象加載,但之後再次加載到Help
類中。是不是Help
類加載兩次?這樣做的理由是什麼?編碼器爲什麼要加載一個類兩次?
例如:
public class Myclass {
int i;
Object help;
public Myclass() {
help = new Help(); /// help class loaded
}
private Object doSomething(int h) {
Help.getHelp(h);
}
}
幫助類:
public class Help(){
Object returnhelp;
int h;
public Help() {
int h=3;
}
public Help getHelp(int y) {
return new Help(y); ///// Help class loaded again ????
}
private add(int y) {
h=+y;
return h;
}
}
當您執行'new Help()'時,類沒有被加載,它正在被實例化,這是一個很大的區別。 –
doSomething錯過了一個'return'。 'getHelp'應該是'public static Help'。這將使'getHelp'成爲**工廠**方法。一般情況下,人們會決定這一個或另一個,使建設者是私人的。如果將工廠方法放在另一個類中,則可以完全隱藏實際的類並返回一個接口。所以你有選擇實施的自由。 –
歡迎來到StackOverflow。我認爲你的問題已經得到解答。請[標記答案正確](http://meta.stackexchange.com/questions/5234/how-does-accepting-an-answer-work),謝謝。 – m0skit0