java 創建對象的多種方法


 1.new 關鍵字創建對象 
     new創建對象會增加耦合度。無論使用什么框架,都要減少new的使用以降低耦合度。
 2.反射機制創建對象
(1)Class類的newInstance方法:
     Class c = Class.forName("com.briup.text");
     Hello h = (Hello)c.newInstance();
 (2)Constructor類的newInstance方法
     Class c = Class.forName("com.briup.text");
     Constructor constructor = c.getConstruction();
     Hello h =(Hello) constructor.newInstance();
 3.clone();
   Hello h1 = new Hello();
   Hello h2 = (Hello)h1.clone();
 4.序列化機制(使用序列化時,要實現實現Serializable接口,將一個對象序列化到磁盤上,而采用反序列化可以將磁盤上的對象信息轉化到內存中)
         Hello h = new Hello();
         File f = new File("hello.obj");
     FileOutputStream fos = new FileOutputStream(f);
         ObjectOutputStream oos = new ObjectOutputStream(fos);
         FileInputStream fis = new FileInputStream(f);
         ObjectInputStream ois = new ObjectInputStream(fis)
         //序列化對象,寫入到磁盤中
         oos.writeObject(h);
         //反序列化對象
         Hello newHello = (Hello)ois.readObject();


注意事項:除了new創建對象,其他都需要類型的強制轉換
經典面試題:創建對象一定要new嗎,請舉例說明

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM