我想在Java代碼中某處:測試Java代碼是否在applet中運行的最佳方法是什麼?
if(inAnApplet()) {
initForApplet();
} else {
initForApp();
}
我想在Java代碼中某處:測試Java代碼是否在applet中運行的最佳方法是什麼?
if(inAnApplet()) {
initForApplet();
} else {
initForApp();
}
假設某處你有延伸JApplet
視圖,它是從那裏你有代碼訪問,如果,你可以寫:
if(mainView instanceof JApplet) {
initForApplet();
} else {
initForApp();
}
public class MyApplet extends JApplet {
boolean isapplet = true;
public MyApplet() {
this(true);
}
public MyApplet(boolean isapplet) {
this.isapplet = isapplet;
}
public static final void main(String[] argv) {
// is an app
new MyApplet(false);
}
}
像JLI說,也許你可以創建一個初始化中public (static) boolean isApplet = true
中,你會喜歡做的檢查,並設置在main方法假類的地方訪問,爲public static void main(String[] args)
不在Applet中調用。
這樣你的支票就可以簡單地開始if(isApplet)
!
HTH
如果`main`被調用,這不是一個小程序。只是在某個地方保存該狀態。 – jli 2011-12-15 20:39:45
@jli這是我記得在幾天之內(當Applets幾個月很酷時 - - )。我很驚訝現在還沒有一種巧妙的技術,隨着小應用程序和JWS的合併(或任何真正被稱爲)的出現。 – 2011-12-15 20:54:51
我正在尋找更多的堡壘靜態全球「系統」的方式來獲得它。所以我可以把它放在一個靜態初始化器中。如果我通過某個參數作爲參數,那麼我可以區分。在最初的階段中,我可能想要加載一個或另一個類,具體取決於虛擬機運行的上下文。 – peterk 2011-12-15 22:43:07