JAVA創建對象有哪幾種方式?
創建對象的幾種方式:
第一種,也是最常用、一直接觸到的方法:通過new 創建對象。這種方法需要用到構造器
Demo demo1=new Demo(); Demo demo2=new Demo(1,"有參構造器");
第二種,比較常用的的方法:通過反射 newInstance()創建對象。這種方法用到構造器
Demo demo2=(Demo) Class.forName("Demo").newInstance();
第三種,通過object類的clone方法。需要實現Cloneable接口,重寫object類的clone方法。無論何時我們調用一個對象的clone方法,jvm就會創建一個新的對象,將前面對象的內容全部拷貝進去。用clone方法創建對象并不會調用任何構造函數。(原型模式,還沒了解)
Demo demo4=(Demo) demo2.clone();
第四種,反序列化。java 中常常進行 JSON 數據跟 Java 對象之間的轉換,即序列化和反序列化。當我們序列化和反序列化一個對象,JVM會給我們創建一個單獨的對象,在反序列化時,JVM創建對象并不會調用任何構造函數。為了反序列化一個對象,我們需要讓我們的類實現Serializable接口,雖然該接口沒有任何方法。不會調用任何構造函數
百度搜索圈T社區(www.aiquanti.com) 免費視頻教程