這期內容當中小編將會給大家帶來有關如何在Java項目中動態加載類,文章內容豐富且以專業的角度為大家分析和敘述,閱讀完這篇文章希望大家可以有所收獲。
創新互聯是專業的南澗網站建設公司,南澗接單;提供網站制作、做網站,網頁設計,網站設計,建網站,PHP網站建設等專業做網站服務;采用PHP框架,可快速的進行南澗網站開發網頁制作和功能擴展;專業做搜索引擎喜愛的網站,專業的做網站團隊,希望更多企業前來合作!Java是一門面向對象編程語言,可以編寫桌面應用程序、Web應用程序、分布式系統和嵌入式系統應用程序。
Office.java 類和 Word.java類,如下:

Office.java
class Office{
public static void main(String[] args){
if(args[0].equals("Word")){
Word w = new Word();
w.start();
}
if(args[0].equals("Excel")){
Excel e = new Excel();
e.start();
}
}
}Word.java
class Word{
public void start(){
System.out.println("Word Start");
}
}此時我們編譯一下Office.java 文件:

編譯會報錯,這當然沒問題,因為確實沒有寫Excel.java類。
但是這個Excel類我們一定會用到嗎?如果這個Excel類需要很久才能寫出來,在此我們也不能使用其他功能嗎?后面如果一個類出問題了,這個系統是不是就癱瘓了?
所以這就體現出動態加載類的好處了,動態加載類是按需加載的,你需要什么類,就加載什么類,一個類的狀態,不會影響到另一個類的使用。
所以我們可以將Office類改造如下:
class Office{
public static void main(String[] args){
try{
Class c = Class.forName(args[0]);
Word w = (Word)c.newInstance();
w.start();
}
catch(Exception e){
e.printStackTrace();
}
}
}雖然我們還是沒有寫Excel類,但此時我們再編譯Office.java文件,編譯通過;

運行一下:

成功按照我們預想的結果運行,這樣Word類就可以單獨運行。
但是這樣還是不夠規范,因為現在只能加載Word類類型的類文件,為了使程序有更好的擴展性,我們添加一個接口,只有讓所有的功能類實現該接口即可。完善如下:
OfficeAble.java
interface OfficeAble{
public void start();
}Office.java
class Office{
public static void main(String[] args){
try{
Class c = Class.forName(args[0]);
OfficeAble oa = (OfficeAble)c.newInstance();
oa.start();
}
catch(Exception e){
e.printStackTrace();
}
}
}Word.java
class Word implements OfficeAble{
public void start(){
System.out.println("Word Start");
}
}上述就是小編為大家分享的如何在Java項目中動態加載類了,如果剛好有類似的疑惑,不妨參照上述分析進行理解。如果想知道更多相關知識,歡迎關注創新互聯行業資訊頻道。
分享名稱:如何在Java項目中動態加載類-創新互聯
文章URL:http://www.yijiale78.com/article36/cdpepg.html
成都網站建設公司_創新互聯,為您提供響應式網站、App設計、Google、企業網站制作、ChatGPT、網站設計
聲明:本網站發布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創新互聯