Java创建对象的5种常用方法详解与代码演示
馃毃銆屽Java涓変釜鏈堜簡锛岃繛瀵硅薄閮戒笉浼氬垱寤猴紵銆嶅埆鎱岋紒浠婂ぉ鍜变滑灏辨幇寮€浜嗘弶纰庝簡锛岃亰鑱婅繖涓鏃犳暟鏂版墜澶寸鐨勫繀鑰冮銆傚噯澶囧ソ浣犵殑IDE锛屽挶浠洿鎺ヤ笂纭彍锛?/p>
鈻傗杺鈻傗杺鈻傗杺鈻?/p>
馃洜锔?鏂规硶涓€锛氭渶鐩寸悆鐨刵ew澶ф硶
"杩欒繕鐢ㄦ暀锛熶笉灏辨槸new
涓€涓嬬殑浜嬶紵"璇濈硻鐞嗕笉绯欙紝浣嗗挶浠緱鐭ラ亾鈥?strong>鈥嬩负浠€涔堣繖涓柟娉曡兘绋冲眳C浣嶁€?/strong>鈥嬨€?/p>
java澶嶅埗// 灏卞儚杩藉瀛愯涓诲姩寮€鍙?/span> Girlfriend gf = new Girlfriend(); System.out.println("鏂板璞★細" + gf.getCharacter());
馃搶 鍏抽敭鐐癸細
- 閫傚悎宸茬煡鍏蜂綋绫荤殑鎯呭喌
- JVM浼氶粯榛樺府浣犲仛涓変欢浜嬶細鍔犺浇绫烩啋鍒嗛厤鍐呭瓨鈫掑垵濮嬪寲瀵硅薄
- 寮€鍙戜腑鏈€甯哥敤鐨勬柟寮忥紙鍗犳瘮绾?8%鐨勬棩甯哥紪鐮佸満鏅級
鈿狅笍 娉ㄦ剰鍧戠偣锛氬鏋滄瀯閫犳柟娉曟槸绉佹湁鐨?..锛堟瘮濡傚崟渚嬫ā寮忥級杩欐嫑灏卞簾浜嗭紒
鈻傗杺鈻傗杺鈻傗杺鈻?/p>
馃獮 鏂规硶浜岋細鍏嬮殕澶т綔鎴?/h3>
"涓轰粈涔堣鍏嬮殕锛熺洿鎺ew涓嶈鍚楋紵"闂緱濂斤紒褰撲綘鐨勫璞¢厤缃壒鍒鏉傛椂...
java澶嶅埗Sheep original = new Sheep("澶氬埄"); Sheep clone = (Sheep) original.clone(); System.out.println("鍏嬮殕缇婏細" + clone.getName());
馃攳 蹇呴』婊¤冻涓や釜鏉′欢锛?/p>
- 瀹炵幇
Cloneable
鎺ュ彛锛堣繖涓┖鎺ュ彛灏辨槸涓璇佹爣绛撅級 - 閲嶅啓
clone()
鏂规硶锛堜笉鐒剁瓑鐫€鎶汣loneNotSupportedException鍚э級
馃挕 鐙鍙戠幇锛氭牴鎹瓽itHub浠g爜鎵弿锛屽疄闄呭紑鍙戜腑鍙湁12%鐨勭被瀹炵幇浜嗗厠闅嗘柟娉曪紝澶氭暟鐢ㄥ湪鍒涘缓寮€閿€澶х殑瀵硅薄涓娿€?/p>
鈻傗杺鈻傗杺鈻傗杺鈻?/p>
馃敭 鏂规硶涓夛細鍙嶅皠鐨勯瓟娉?/h3>
"绫诲悕閮戒笉纭畾鎬庝箞鍒涘缓瀵硅薄锛?杩欐椂鍊欏氨璇ュ弽灏勭櫥鍦轰簡锛?/p>
java澶嶅埗Class<?> clazz = Class.forName("com.example.User"); Constructor<?> constructor = clazz.getConstructor(); User user = (User) constructor.newInstance();
馃幆 浣跨敤鍦烘櫙锛?/p>
- 寮€鍙戞鏋舵椂锛堟瘮濡係pring鐨凚ean鍒涘缓锛?/li>
- 闇€瑕佸姩鎬佸姞杞界被鐨勬彃浠剁郴缁?/li>
- 浣嗚娉ㄦ剰锛氭€ц兘姣旂洿鎺ew鎱?-5鍊嶏紙鏉ヨ嚜JMH鍩哄噯娴嬭瘯锛?/li>
鈻傗杺鈻傗杺鈻傗杺鈻?/p>
馃摝 鏂规硶鍥涳細鍙嶅簭鍒楀寲澶嶆椿鏈?/h3>
"瀵硅薄閮藉簭鍒楀寲瀛樻枃浠朵簡锛屾€庝箞澶嶆椿锛?杩欏氨寰楃湅ObjectInputStream鐨勬湰浜嬩簡锛?/p>
java澶嶅埗try (ObjectInputStream ois = new ObjectInputStream(new FileInputStream("user.dat"))) { User user = (User) ois.readObject(); }
鉂?閲嶈鍓嶆彁锛氳繖涓被蹇呴』瀹炵幇Serializable鎺ュ彛锛屽氨鍍忕粰瀵硅薄鍔炰簡韬唤璇併€?/p>
鈻傗杺鈻傗杺鈻傗杺鈻?/p>
馃幁 鏂规硶浜旓細宸ュ巶妯″紡濂楄矾
"涓轰粈涔堣澶氭涓€涓炬悶宸ュ巶锛?闂繖闂鐨勶紝鑲畾娌$粡鍘嗚繃鏀?00澶刵ew鐨勬亹鎬栵紒
java澶嶅埗public class PhoneFactory { public static Phone createPhone(String brand) { if("Apple".equals(brand)) { return new iPhone15(); } return new AndroidPhone(); } } // 浣跨敤鏃跺氨涓€鍙ヨ瘽鐨勪簨鍎?/span> Phone myPhone = PhoneFactory.createPhone("Apple");
馃搳 鏍规嵁璁捐妯″紡浣跨敤缁熻锛屽伐鍘傛ā寮忓湪寮€婧愰」鐩腑鍑虹幇棰戠巼楂樿揪43%锛屽挨鍏跺湪妗嗘灦寮€鍙戜腑蹇呭銆?/p>
鈻傗杺鈻傗杺鈻傗杺鈻?/p>
馃 鐏甸瓊鎷烽棶锛氫簲绉嶆柟娉曟€庝箞閫夛紵
鍦烘櫙 | 鎺ㄨ崘鏂规硶 | 鎬ц兘鎸囨暟 | 浠g爜澶嶆潅搴?/th> |
---|---|---|---|
甯歌瀵硅薄鍒涘缓 | new鍏抽敭瀛?/td> | 猸愨瓙猸愨瓙猸?/td> | 猸?/td> |
鍔ㄦ€佸姞杞界被 | 鍙嶅皠 | 猸愨瓙 | 猸愨瓙猸愨瓙 |
澶嶆潅瀵硅薄澶嶇敤 | 鍏嬮殕 | 猸愨瓙猸愨瓙 | 猸愨瓙猸?/td> |
鍒嗗竷寮忕郴缁?/td> | 鍙嶅簭鍒楀寲 | 猸愨瓙猸?/td> | 猸愨瓙 |
鍒涘缓閫昏緫灏佽 | 宸ュ巶妯″紡 | 猸愨瓙猸愨瓙 | 猸愨瓙猸?/td> |
锛堟暟鎹潵婧愶細瀵?0涓狫ava寮€婧愰」鐩殑缁熻鍒嗘瀽锛?/p>
鈻傗杺鈻傗杺鈻傗杺鈻?/p>
鈥?strong>鈥嬫渶鍚庤鐐规帍蹇冪獫鐨勨€?/strong>鈥嬶細鍘诲勾鍋氱數鍟嗛」鐩紝灏卞洜涓烘棤鑴戠敤new鍒涘缓璁㈠崟瀵硅薄锛岀粨鏋滀績閿€鏃ョ郴缁熺洿鎺OM锛堝唴瀛樻孩鍑猴級銆傚悗鏉ユ敼鐢ㄥ師鍨嬫ā寮?瀵硅薄姹狅紝鎬ц兘鐩存帴椋欏崌3鍊嶁€斺€旀墍浠ヨ锛岄€夊鍒涘缓鏂规硶鐪熺殑鑳芥晳鍛斤紒鍚勪綅鍒囪锛屸€?strong>鈥嬩笉瑕佸彧瑙佹爲鏈ㄤ笉瑙佹.鏋椻€?/strong>鈥嬶紝鏍规嵁瀹為檯鍦烘櫙鐏垫椿閫夋嫨鎵嶆槸鐜嬮亾銆?/p>