首页 > 趣闻 > 正文内容

Java创建对象的5种常用方法详解与代码演示

趣闻2025-05-19 16:28:49

馃毃銆屽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>

  1. 瀹炵幇Cloneable鎺ュ彛锛堣繖涓┖鎺ュ彛灏辨槸涓璇佹爣绛撅級
  2. 閲嶅啓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>

搜索