亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定

這個也沒有解決說如果excel沒有這個類還能運行啊

public?class?test?{

	public?static?void?main(String[]?args)?{
		//?TODO?Auto-generated?method?stub
????????
	if("word".equals(args[0])){
			Class?c;
			try?{
				c?=?Class.forName(args[0]);
				word?w=(word)c.newInstance();
				w.start();
			}?catch?(ClassNotFoundException?e)?{
				//?TODO?Auto-generated?catch?block
				e.printStackTrace();
			}?catch?(InstantiationException?e)?{
				//?TODO?Auto-generated?catch?block
				e.printStackTrace();
			}?catch?(IllegalAccessException?e)?{
				//?TODO?Auto-generated?catch?block
				e.printStackTrace();
			}
		}
		if("excel".equals(args[0])){
			Class?c;
			try?{
				c?=?Class.forName(args[0]);
				excel?e=(excel)c.newInstance();
				e.start();
			}?catch?(ClassNotFoundException?e)?{
				//?TODO?Auto-generated?catch?block
				e.printStackTrace();
			}?catch?(InstantiationException?e)?{
				//?TODO?Auto-generated?catch?block
				e.printStackTrace();
			}?catch?(IllegalAccessException?e)?{
				//?TODO?Auto-generated?catch?block
				e.printStackTrace();
			}
		}
????????
	}

}

如果我沒有excel的類,在編譯時還是會報錯,并不能實現這個功能,

難道說只能用接口,那樣只能體現接口的作用

正在回答

2 回答

之所以會報錯是因為這里使用的是靜態加載,在目錄下沒有寫excel的類當然會報錯了

老師講的意思是如何在Excel類有問題的情況下使用沒有問題的Word類的方法,首先就是要通過編譯才能使用

如何在Excel類有問題的情況下通過編譯呢,就是使用動態加載了,也就是說當某個類在要使用的時候才進行相關的編譯與加載,不使用的話就不加載,這樣這個程序作為整體來說就可以運行沒有問題的Word類和方法,只有運行到錯誤的Excel類的方法的時候,程序才會提示錯誤。

所以這個問題的關鍵核心在于:

如何在一個可能存在錯誤類的情況下盡可能使用沒有存在錯誤的類,而不是如何解決錯誤的類。

1 回復 有任何疑惑可以回復我~
#1

小不點2016 提問者

非常感謝!
2016-08-05 回復 有任何疑惑可以回復我~

http://img1.sycdn.imooc.com//57a470a70001247503680361.jpg

編譯時還是會報錯是因為編譯器監測了此處使用excel的語法錯誤(未定義excel類)

0 回復 有任何疑惑可以回復我~

舉報

0/150
提交
取消

這個也沒有解決說如果excel沒有這個類還能運行啊

我要回答 關注問題
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號