Java闈㈣瘯鍩虹
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Java闈㈣瘯鍩虹相关的知识,希望对你有一定的参考价值。
鏍囩锛?a href='http://www.mamicode.com/so/1/%e5%90%8c%e6%ad%a5' title='鍚屾'>鍚屾 绛変环 澶ч噺 鍛戒护 瑕嗙洊 鐩稿叧淇℃伅 images 鍘熷洜 瀹炵幇
1.闈㈠悜瀵硅薄鍜岄潰鍚戣繃绋嬬殑鍖哄埆锛?/div>
-
闈㈠悜杩囩▼锛氶潰鍚戣繃绋嬫€ц兘姣旈潰鍚戝璞¢珮
-
闈㈠悜瀵硅薄锛氶潰鍚戝璞℃槗缁存姢銆佹槗澶嶇敤銆佹槗鎵╁睍
2.Java 璇█鏈夊摢浜涚壒鐐癸紵
绠€鍗曟槗瀛︺€侀潰鍚戝璞★紙灏佽锛岀户鎵匡紝澶氭€侊級銆佸钩鍙版棤鍏虫€э紙 Java 铏氭嫙鏈哄疄鐜板钩鍙版棤鍏虫€э級銆佸彲闈犳€с€佸畨鍏ㄦ€с€佹敮鎸佸绾跨▼銆佹敮鎸佺綉缁滅紪绋嬪苟涓斿緢鏂逛究銆佺紪璇戜笌瑙i噴骞跺瓨銆?/div>
3.JDK鍜孞RE锛?/div>
-
JDK锛欽ava Development Kit锛屽畠鏄姛鑳介綈鍏ㄧ殑Java SDK銆傚畠鎷ユ湁JRE鎵€鎷ユ湁鐨勪竴鍒囷紝杩樻湁缂栬瘧鍣紙javac锛夊拰宸ュ叿锛堝javadoc鍜宩db锛夈€傚畠鑳藉鍒涘缓鍜岀紪璇戠▼搴忋€?/div>JRE 鏄?Java杩愯鏃剁幆澧冦€傚畠鏄繍琛屽凡缂栬瘧 Java 绋嬪簭鎵€闇€鐨勬墍鏈夊唴瀹圭殑闆嗗悎锛屽寘鎷?Java铏氭嫙鏈猴紙JVM锛夛紝Java绫诲簱锛宩ava鍛戒护鍜屽叾浠栫殑涓€浜涘熀纭€鏋勪欢銆備絾鏄紝瀹冧笉鑳界敤浜庡垱寤烘柊绋嬪簭銆?/div>4.Java鍜孋++鐨勫尯鍒?
-
閮芥槸闈㈠悜瀵硅薄鐨勮瑷€锛岄兘鏀寔灏佽銆佺户鎵垮拰澶氭€?/div>Java 涓嶆彁渚涙寚閽堟潵鐩存帴璁块棶鍐呭瓨锛岀▼搴忓唴瀛樻洿鍔犲畨鍏?/div>Java 鐨勭被鏄崟缁ф壙鐨勶紝C++ 鏀寔澶氶噸缁ф壙锛涜櫧鐒?Java 鐨勭被涓嶅彲浠ュ缁ф壙锛屼絾鏄帴鍙e彲浠ュ缁ф壙銆?/div>Java 鏈夎嚜鍔ㄥ唴瀛樼鐞嗘満鍒讹紝涓嶉渶瑕佺▼搴忓憳鎵嬪姩閲婃斁鏃犵敤鍐呭瓨銆?/div>5.Java 闈㈠悜瀵硅薄涓夊ぇ鐗规€?/div>灏佽 缁ф壙 澶氭€?/div>
-
灏佽锛氬埄鐢ㄦ娊璞℃暟鎹被鍨嬪皢鏁版嵁鍜屾搷浣滄暟鎹殑鏂规硶缁戝畾璧锋潵锛屾暟鎹淇濇姢鍦ㄦ娊璞℃暟鎹被鍨嬬殑鍐呴儴锛屽敖鍙兘鍦伴殣钘忓唴閮ㄧ殑缁嗚妭锛屽鏁版嵁鐨勮闂彧鑳介€氳繃宸插畾涔夌殑鎺ュ彛銆?/div>缁ф壙锛氫娇鐢ㄥ凡瀛樺湪鐨勭被鐨勫畾涔変綔涓哄熀纭€寤虹珛鏂扮被锛屾柊绫荤殑瀹氫箟鍙互澧炲姞鏂扮殑鏁版嵁鎴栨柊鐨勫姛鑳斤紝涔熷彲浠ョ敤鐖剁被鐨勫姛鑳斤紝浣嗕笉鑳介€夋嫨鎬у湴缁ф壙鐖剁被銆傞€氳繃浣跨敤缁ф壙鎴戜滑鑳藉闈炲父鏂逛究鍦板鐢ㄤ互鍓嶇殑浠g爜銆?/div>鍏充簬缁ф壙闇€瑕佹敞鎰忕殑鐐癸細瀛愮被鎷ユ湁鐖剁被瀵硅薄鎵€鏈夌殑灞炴€у拰鏂规硶锛屼絾鏄埗绫讳腑鐨勭鏈夊睘鎬у拰鏂规硶瀛愮被鏄棤娉曡闂紝鍙槸鎷ユ湁銆?/div>瀛愮被鍙互鎷ユ湁鑷繁灞炴€у拰鏂规硶锛屽嵆瀛愮被鍙互瀵圭埗绫昏繘琛屾墿灞曘€?/div>瀛愮被鍙互鎷ユ湁鑷繁灞炴€у拰鏂规硶锛屽嵆瀛愮被鍙互瀵圭埗绫昏繘琛屾墿灞曘€?/div>澶氭€侊細鍏佽涓嶅悓瀛愮被鍨嬬殑瀵硅薄瀵瑰悓涓€娑堟伅浣滃嚭涓嶅悓鍝嶅簲銆備篃灏辨槸锛岀敤鍚屾牱鐨勫璞″紩鐢ㄨ皟鐢ㄥ悓鏍风殑鏂规硶浣嗘槸鍋氫簡涓嶅悓鐨勪簨鎯呫€?nbsp;澶氭€佹湁涓ょ瀹炵幇鏂瑰紡锛?/div>缁ф壙锛屽嵆澶氫釜瀛愮被瀵瑰悓涓€鏂规硶鐨勯噸鍐欙紱鎺ュ彛锛屽嵆瀹炵幇鎺ュ彛骞惰鐩栨帴鍙d腑鍚屼竴鏂规硶锛?/div>6.鎶借薄绫诲拰鎺ュ彛鐨勫尯鍒紵鐩稿悓鐐癸細
-
閮戒笉鑳界洿鎺ュ疄渚嬪寲瀵硅薄锛?/div>閮藉寘鍚娊璞℃柟娉曪紝鍏跺瓙绫婚兘蹇呴』瑕嗗啓杩欎簺鎶借薄鏂规硶锛?/div>涓嶅悓鐐癸細
-
鎶借薄绫讳负閮ㄥ垎鏂规硶鎻愪緵瀹炵幇,閬垮厤瀛愮被閲嶅瀹炵幇杩欎簺鏂规硶,鎻愰珮浠g爜閲嶇敤鎬?鎺ュ彛鍙兘鍖呭惈鎶借薄鏂规硶;
-
涓€涓被鍙兘缁ф壙涓€涓洿鎺ョ埗绫?鍙兘鏄娊璞$被),鍗村彲浠ュ疄鐜板涓帴鍙?(鎺ュ彛寮ヨˉ浜咼ava鐨勫崟缁ф壙)锛?/div>鎺ュ彛鏄繖涓簨鐗╀腑鐨勯澶栧唴瀹?缁ф壙浣撶郴鏄竴绉?like..a鍏崇郴鎶借薄绫绘槸杩欎釜浜嬬墿涓簲璇ュ叿澶囩殑浣犲唴瀹? 缁ф壙浣撶郴鏄竴绉?is..a鍏崇郴7.鎶借薄绫诲彲浠ョ敤final淇グ鍚楋紵鍙互鏈塻tatic鏂规硶鍚楋紵鍙互鍒涘缓鎶借薄绫荤殑瀹炰緥鍚楋紵鎶借薄绫诲繀椤绘湁鎶借薄鏂规硶鍚楋紵锛?锛夋娊璞$被涓嶈兘鏄痜inal鐨勶紝灏嗗畠浠0鏄庝负final鐨勫皢浼氶樆姝㈠畠浠缁ф壙锛岃€岃繖姝f槸浣跨敤鎶借薄绫诲敮涓€鐨勬柟娉曪紝瀹冧滑涔熸槸褰兼鐩稿弽鐨勶紝鍏抽敭瀛梐bstract寮哄埗缁ф壙绫伙紝鑰屽叧閿瓧final闃绘绫昏鎵╁紶銆侸ava绫讳笉鑳芥棦鏄痜inal鍙堟槸abstract鐨勶紝缂栬瘧鏃朵細鎶ラ敊銆?/div>锛?锛夋娊璞$被鍙互瀹氫箟static鏂规硶锛屼絾姝tatic鏂规硶鏃犳硶娌$户鎵裤€?/div>锛?锛変笉鑳藉垱寤烘娊璞$被鐨勫疄渚嬶紝鍗充娇鎶借薄绫讳笉鍖呭惈鎶借薄鏂规硶锛屼篃涓嶈兘瀹炰緥鍖栨娊璞$被锛屽惁鍒欑紪璇戞椂浼氭姤閿欍€?/div>锛?锛夋娊璞$被涓嶅己鍒舵€ф湁鎶借薄鏂规硶銆傚彧瑕佷娇鐢ㄥ叧閿瓧abstract灏卞彲浠ュ皢绫诲0鏄庝负鎶借薄绫汇€?/div>8.閲嶈浇鍜岄噸鍐欑殑鍖哄埆
- 閲嶈浇: 鍙戠敓鍦ㄥ悓涓€涓被涓紝鏂规硶鍚嶅繀椤荤浉鍚岋紝鍙傛暟绫诲瀷涓嶅悓銆佷釜鏁颁笉鍚屻€侀『搴忎笉鍚岋紝鏂规硶杩斿洖鍊煎拰璁块棶淇グ绗﹀彲浠ヤ笉鍚岋紝鍙戠敓鍦ㄧ紪璇戞椂銆?/li>
- 閲嶅啓锛?nbsp;鍙戠敓鍦ㄧ埗瀛愮被涓紝鏂规硶鍚嶃€佸弬鏁板垪琛ㄥ繀椤荤浉鍚岋紝杩斿洖鍊艰寖鍥村皬浜庣瓑浜庣埗绫伙紝鎶涘嚭鐨勫紓甯歌寖鍥村皬浜庣瓑浜庣埗绫伙紝璁块棶淇グ绗﹁寖鍥村ぇ浜庣瓑浜庣埗绫伙紱濡傛灉鐖剁被鏂规硶璁块棶淇グ绗︿负 private 鍒欏瓙绫诲氨涓嶈兘閲嶅啓璇ユ柟娉曘€?/li>
9.鍦?Java 涓畾涔変竴涓笉鍋氫簨涓旀病鏈夊弬鏁扮殑鏋勯€犳柟娉曠殑浣滅敤?Java 绋嬪簭鍦ㄦ墽琛屽瓙绫荤殑鏋勯€犳柟娉曚箣鍓嶏紝濡傛灉娌℃湁鐢?nbsp;super()
鏉ヨ皟鐢ㄧ埗绫荤壒瀹氱殑鏋勯€犳柟娉曪紝鍒欎細璋冪敤鐖剁被涓?ldquo;娌℃湁鍙傛暟鐨勬瀯閫犳柟娉?rdquo;銆傚洜姝わ紝濡傛灉鐖剁被涓彧瀹氫箟浜嗘湁鍙傛暟鐨勬瀯閫犳柟娉曪紝鑰屽湪瀛愮被鐨勬瀯閫犳柟娉曚腑鍙堟病鏈夌敤super()
鏉ヨ皟鐢ㄧ埗绫讳腑鐗瑰畾鐨勬瀯閫犳柟娉曪紝鍒欑紪璇戞椂灏嗗彂鐢熼敊璇紝鍥犱负 Java 绋嬪簭鍦ㄧ埗绫讳腑鎵句笉鍒版病鏈夊弬鏁扮殑鏋勯€犳柟娉曞彲渚涙墽琛屻€傝В鍐冲姙娉曟槸鍦ㄧ埗绫婚噷鍔犱笂涓€涓笉鍋氫簨涓旀病鏈夊弬鏁扮殑鏋勯€犳柟娉曘€?/div>10.String StringBuffer 鍜?StringBuilder 鐨勫尯鍒槸浠€涔? String 涓轰粈涔堟槸涓嶅彲鍙樼殑?- 绾跨▼瀹夊叏鎬э細String 涓殑瀵硅薄鏄笉鍙彉鐨勶紝涔熷氨鍙互鐞嗚В涓哄父閲忥紝绾跨▼瀹夊叏銆侫bstractStringBuilder 鏄?StringBuilder 涓?StringBuffer 鐨勫叕鍏辩埗绫伙紝瀹氫箟浜嗕竴浜涘瓧绗︿覆鐨勫熀鏈搷浣滐紝濡?expandCapacity銆乤ppend銆乮nsert銆乮ndexOf 绛夊叕鍏辨柟娉曘€係tringBuffer 瀵规柟娉曞姞浜嗗悓姝ラ攣鎴栬€呭璋冪敤鐨勬柟娉曞姞浜嗗悓姝ラ攣锛屾墍浠ユ槸绾跨▼瀹夊叏鐨勩€係tringBuilder 骞舵病鏈夊鏂规硶杩涜鍔犲悓姝ラ攣锛屾墍浠ユ槸闈炵嚎绋嬪畨鍏ㄧ殑銆?/li>
- 鎬ц兘锛氭瘡娆″ String 绫诲瀷杩涜鏀瑰彉鐨勬椂鍊欙紝閮戒細鐢熸垚涓€涓柊鐨?String 瀵硅薄锛岀劧鍚庡皢鎸囬拡鎸囧悜鏂扮殑 String 瀵硅薄銆係tringBuffer 姣忔閮戒細瀵?StringBuffer 瀵硅薄鏈韩杩涜鎿嶄綔锛岃€屼笉鏄敓鎴愭柊鐨勫璞″苟鏀瑰彉瀵硅薄寮曠敤銆傜浉鍚屾儏鍐典笅浣跨敤 StringBuilder 鐩告瘮浣跨敤 StringBuffer 浠呰兘鑾峰緱 10%~15% 宸﹀彸鐨勬€ц兘鎻愬崌锛屼絾鍗磋鍐掑绾跨▼涓嶅畨鍏ㄧ殑椋庨櫓銆?/li>
- 鍙彉鎬э細String 绫讳腑浣跨敤 final 鍏抽敭瀛椾慨楗板瓧绗︽暟缁勬潵淇濆瓨瀛楃涓诧紝
private銆€final銆€char銆€value[]
锛屾墍浠?String 瀵硅薄鏄笉鍙彉鐨勩€傝€孲tringBuilder 涓?StringBuffer 閮界户鎵胯嚜 AbstractStringBuilder 绫伙紝鍦?AbstractStringBuilder 涓篃鏄娇鐢ㄥ瓧绗︽暟缁勪繚瀛樺瓧绗︿覆char[]value
浣嗘槸娌℃湁鐢?final 鍏抽敭瀛椾慨楗帮紝鎵€浠ヨ繖涓ょ瀵硅薄閮芥槸鍙彉鐨勩€?/li>
鎬荤粨锛?/div>锛?锛夋搷浣滃皯閲忕殑鏁版嵁: 閫傜敤String锛?锛夊崟绾跨▼鎿嶄綔瀛楃涓茬紦鍐插尯涓嬫搷浣滃ぇ閲忔暟鎹? 閫傜敤StringBuilder锛?锛夊绾跨▼鎿嶄綔瀛楃涓茬紦鍐插尯涓嬫搷浣滃ぇ閲忔暟鎹? 閫傜敤StringBuffer11.鎴愬憳鍙橀噺涓庡眬閮ㄥ彉閲忕殑鍖哄埆鏈夊摢浜涳紵- 浠庤娉曞舰寮忎笂鐪?鎴愬憳鍙橀噺鏄睘浜庣被鐨勶紝鑰屽眬閮ㄥ彉閲忔槸鍦ㄦ柟娉曚腑瀹氫箟鐨勫彉閲忔垨鏄柟娉曠殑鍙傛暟锛涙垚鍛樺彉閲忓彲浠ヨ public,private,static 绛変慨楗扮鎵€淇グ锛岃€屽眬閮ㄥ彉閲忎笉鑳借璁块棶鎺у埗淇グ绗﹀強 static 鎵€淇グ锛涗絾鏄紝鎴愬憳鍙橀噺鍜屽眬閮ㄥ彉閲忛兘鑳借 final 鎵€淇グ銆?/li>
- 浠庡彉閲忓湪鍐呭瓨涓殑瀛樺偍鏂瑰紡鏉ョ湅:濡傛灉鎴愬憳鍙橀噺鏄娇鐢?code>static淇グ鐨勶紝閭d箞杩欎釜鎴愬憳鍙橀噺鏄睘浜庣被鐨勶紝濡傛灉娌℃湁浣跨敤
static
淇グ锛岃繖涓垚鍛樺彉閲忔槸灞炰簬瀹炰緥鐨勩€傝€屽璞″瓨鍦ㄤ簬鍫嗗唴瀛橈紝灞€閮ㄥ彉閲忓垯瀛樺湪浜庢爤鍐呭瓨銆?/li> - 浠庡彉閲忓湪鍐呭瓨涓殑鐢熷瓨鏃堕棿涓婄湅:鎴愬憳鍙橀噺鏄璞$殑涓€閮ㄥ垎锛屽畠闅忕潃瀵硅薄鐨勫垱寤鸿€屽瓨鍦紝鑰屽眬閮ㄥ彉閲忛殢鐫€鏂规硶鐨勮皟鐢ㄨ€岃嚜鍔ㄦ秷澶便€?/li>
- 鎴愬憳鍙橀噺濡傛灉娌℃湁琚祴鍒濆€?鍒欎細鑷姩浠ョ被鍨嬬殑榛樿鍊艰€岃祴鍊硷紙涓€绉嶆儏鍐典緥澶?琚?final 淇グ鐨勬垚鍛樺彉閲忎篃蹇呴』鏄惧紡鍦拌祴鍊硷級锛岃€屽眬閮ㄥ彉閲忓垯涓嶄細鑷姩璧嬪€笺€?/li>
12.涓€涓被鐨勬瀯閫犳柟娉曠殑浣滅敤鏄粈涔? 鑻ヤ竴涓被娌℃湁澹版槑鏋勯€犳柟娉曪紝璇ョ▼搴忚兘姝g‘鎵ц鍚? 涓轰粈涔? 鏋勯€犳柟娉曟湁鍝簺鐗规€э紵(1)涓昏浣滅敤鏄畬鎴愬绫诲璞$殑鍒濆鍖栧伐浣溿€傚彲浠ユ墽琛屻€傚洜涓轰竴涓被鍗充娇娌℃湁澹版槑鏋勯€犳柟娉曚篃浼氭湁榛樿鐨勪笉甯﹀弬鏁扮殑鏋勯€犳柟娉曘€?/div>(2)鏋勯€犳柟娉曠殑鐗规€э細- 鍚嶅瓧鍜岀被鍚嶇浉鍚岋紱
- 娌℃湁杩斿洖鍊硷紝浣嗕笉鑳界敤void澹版槑鏋勯€犲嚱鏁般€?/li>
- 鐢熸垚绫荤殑瀵硅薄鏃惰嚜鍔ㄦ墽琛岋紝鏃犻渶璋冪敤銆?/li>
13.闈欐€佹柟娉曞拰瀹炰緥鏂规硶鏈変綍涓嶅悓锛?/strong>- 鍦ㄥ閮ㄨ皟鐢ㄩ潤鎬佹柟娉曟椂锛屽彲浠ヤ娇鐢?绫诲悕.鏂规硶鍚?鐨勬柟寮忥紝涔熷彲浠ヤ娇鐢?瀵硅薄鍚?鏂规硶鍚?鐨勬柟寮忋€傝€屽疄渚嬫柟娉曞彧鏈夊悗闈㈣繖绉嶆柟寮忋€備篃灏辨槸璇达紝璋冪敤闈欐€佹柟娉曞彲浠ユ棤闇€鍒涘缓瀵硅薄銆?/li>
- 闈欐€佹柟娉曞湪璁块棶鏈被鐨勬垚鍛樻椂锛屽彧鍏佽璁块棶闈欐€佹垚鍛橈紙鍗抽潤鎬佹垚鍛樺彉閲忓拰闈欐€佹柟娉曪級锛岃€屼笉鍏佽璁块棶瀹炰緥鎴愬憳鍙橀噺鍜屽疄渚嬫柟娉曪紱瀹炰緥鏂规硶鍒欐棤姝ら檺鍒躲€?/li>
13. == 涓巈quals鐨勫尯鍒紵- == : 瀹冪殑浣滅敤鏄垽鏂袱涓璞$殑鍦板潃鏄笉鏄浉绛夈€傚嵆锛屽垽鏂袱涓璞℃槸涓嶆槸鍚屼竴涓璞?鍩烘湰鏁版嵁绫诲瀷==姣旇緝鐨勬槸鍊硷紝寮曠敤鏁版嵁绫诲瀷==姣旇緝鐨勬槸鍐呭瓨鍦板潃)銆?/li>
- equals() : 瀹冪殑浣滅敤涔熸槸鍒ゆ柇涓や釜瀵硅薄鏄惁鐩哥瓑銆備絾瀹冧竴鑸湁涓ょ浣跨敤鎯呭喌锛?br clear="none" /> (1)鎯呭喌1锛氱被娌℃湁瑕嗙洊 equals() 鏂规硶銆傚垯閫氳繃 equals() 姣旇緝璇ョ被鐨勪袱涓璞℃椂锛岀瓑浠蜂簬閫氳繃“==”姣旇緝杩欎袱涓璞°€?br clear="none" /> (2)鎯呭喌2锛氱被瑕嗙洊浜?equals() 鏂规硶銆備竴鑸垜浠兘瑕嗙洊 equals() 鏂规硶鏉ユ瘮杈冧袱涓璞$殑鍐呭鏄惁鐩哥瓑锛涜嫢瀹冧滑鐨勫唴瀹圭浉绛夛紝鍒欒繑鍥?true (鍗筹紝璁や负杩欎袱涓璞$浉绛?銆?/li>
14.hashCode()涓巈quals()鐨勫尯鍒紵浠庢€ц兘鍜屽彲闈犳€ц繘琛屽垎鏋愶細- 閲嶅啓equals()鏂规硶鏃舵€ц兘姣旇緝浣庯紝鑰屽埄鐢╤ashCode()杩涜瀵规瘮锛屽垯鍙鐢熸垚涓€涓猦ash鍊艰繘琛屾瘮杈冨氨鍙互浜嗭紝鏁堢巼寰堥珮銆?/li>
- hashCode()骞朵笉鏄畬鍏ㄥ彲闈狅紝鏈夋椂鍊欎笉鍚岀殑瀵硅薄鐢熸垚鐨刪ashcode涔熶細涓€鏍凤紝鎵€浠ashCode()鍙兘璇存槸澶ч儴鍒嗘椂鍊欏彲闈狅紝骞朵笉鏄粷瀵瑰彲闈犮€傛墍浠ユ湁浠ヤ笅缁撹锛?br clear="none" />锛?锛塭quals()鐩哥瓑鐨勪袱涓璞′粬浠殑hashCode()鑲畾鐩哥瓑锛屼篃灏辨槸鐢╡quals()瀵规瘮鏄粷瀵瑰彲闈犵殑锛?br clear="none" />锛?锛塰ashCode()鐩哥瓑鐨勪袱涓璞′粬浠殑equals()涓嶄竴瀹氱浉绛夛紝涔熷氨鏄痟ashCode()涓嶆槸缁濆鍙潬鐨勩€?/li>
鎬荤粨锛?/div>- 鑻ラ噸鍐欎簡equals(Object obj)鏂规硶锛屽垯鏈夊繀瑕侀噸鍐檋ashCode()鏂规硶銆?/li>
- 鑻ヤ袱涓璞quals(Object obj)杩斿洖true锛屽垯hashCode锛堬級鏈夊繀瑕佷篃杩斿洖鐩稿悓鐨刬nt鏁般€?/li>
- 鑻ヤ袱涓璞quals(Object obj)杩斿洖false锛屽垯hashCode锛堬級涓嶄竴瀹氳繑鍥炰笉鍚岀殑int鏁般€?/li>
- 鑻ヤ袱涓璞ashCode锛堬級杩斿洖鐩稿悓int鏁帮紝鍒檈quals锛圤bject obj锛変笉涓€瀹氳繑鍥瀟rue銆?/li>
- 鑻ヤ袱涓璞ashCode锛堬級杩斿洖涓嶅悓int鏁帮紝鍒檈quals锛圤bject obj锛変竴瀹氳繑鍥瀎alse銆?/li>
- 鍚屼竴瀵硅薄鍦ㄦ墽琛屾湡闂磋嫢宸茬粡瀛樺偍鍦ㄩ泦鍚堜腑锛屽垯涓嶈兘淇敼褰卞搷hashCode鍊肩殑鐩稿叧淇℃伅锛屽惁鍒欎細瀵艰嚧鍐呭瓨娉勯湶闂銆?/li>
15.hashCode()鐨勪綔鐢紵hashCode() 鐨勪綔鐢ㄦ槸鑾峰彇鍝堝笇鐮侊紝涔熺О涓烘暎鍒楃爜锛涘畠瀹為檯涓婃槸杩斿洖涓€涓猧nt鏁存暟銆傝繖涓搱甯岀爜鐨勪綔鐢ㄦ槸纭畾璇ュ璞″湪鍝堝笇琛ㄤ腑鐨勭储寮曚綅缃€俬ashCode() 瀹氫箟鍦↗DK鐨凮bject.java涓紝杩欏氨鎰忓懗鐫€Java涓殑浠讳綍绫婚兘鍖呭惈鏈塰ashCode() 鍑芥暟銆俬ashCode() 鍦ㄦ暎鍒楄〃涓墠鏈夌敤锛屽湪鍏跺畠鎯呭喌涓嬫病鐢ㄣ€傚湪鏁e垪琛ㄤ腑hashCode() 鐨勪綔鐢ㄦ槸鑾峰彇瀵硅薄鐨勬暎鍒楃爜锛岃繘鑰岀‘瀹氳瀵硅薄鍦ㄦ暎鍒楄〃涓殑浣嶇疆銆?/div>16.final鍏抽敭瀛楃殑浣滅敤锛?/strong>- 瀵逛簬涓€涓猣inal鍙橀噺锛屽鏋滄槸鍩烘湰鏁版嵁绫诲瀷鐨勫彉閲忥紝鍒欏叾鏁板€间竴鏃﹀湪鍒濆鍖栦箣鍚庝究涓嶈兘鏇存敼锛涘鏋滄槸寮曠敤绫诲瀷鐨勫彉閲忥紝鍒欏湪瀵瑰叾鍒濆鍖栦箣鍚庝究涓嶈兘鍐嶈鍏舵寚鍚戝彟涓€涓璞°€?/li>
- 褰撶敤final淇グ涓€涓被鏃讹紝琛ㄦ槑杩欎釜绫讳笉鑳借缁ф壙銆俧inal绫讳腑鐨勬墍鏈夋垚鍛樻柟娉曢兘浼氳闅愬紡鍦版寚瀹氫负final鏂规硶銆?/li>
- 浣跨敤final鏂规硶鐨勫師鍥犳湁涓や釜銆傜涓€涓師鍥犳槸鎶婃柟娉曢攣瀹氾紝浠ラ槻浠讳綍缁ф壙绫讳慨鏀瑰畠鐨勫惈涔夛紱绗簩涓師鍥犳槸鏁堢巼銆傚湪鏃╂湡鐨凧ava瀹炵幇鐗堟湰涓紝浼氬皢final鏂规硶杞负鍐呭祵璋冪敤銆備絾鏄鏋滄柟娉曡繃浜庡簽澶э紝鍙兘鐪嬩笉鍒板唴宓岃皟鐢ㄥ甫鏉ョ殑浠讳綍鎬ц兘鎻愬崌锛堢幇鍦ㄧ殑Java鐗堟湰宸茬粡涓嶉渶瑕佷娇鐢╢inal鏂规硶杩涜杩欎簺浼樺寲浜嗭級銆傜被涓墍鏈夌殑private鏂规硶閮介殣寮忓湴鎸囧畾涓篺inal銆?/li>
17.Java涓殑寮傚父澶勭悊锛?/strong>鎵€鏈夌殑寮傚父鏄疶hrowable绫汇€俆hrowable锛?鏈変袱涓噸瑕佺殑瀛愮被锛欵xception锛堝紓甯革級 鍜?nbsp;Error锛堥敊璇級 锛屼簩鑰呴兘鏄?Java 寮傚父澶勭悊鐨勯噸瑕佸瓙绫伙紝鍚勮嚜閮藉寘鍚ぇ閲忓瓙绫汇€?/div>- Error锛氱▼搴忔棤娉曞鐞嗙殑閿欒銆傝〃绀鸿繍琛屽簲鐢ㄧ▼搴忎腑杈冧弗閲嶉棶棰橈紝澶у鏁伴敊璇笌浠g爜缂栧啓鑰呮墽琛岀殑鎿嶄綔鏃犲叧锛岃€岃〃绀轰唬鐮佽繍琛屾椂 JVM锛圝ava 铏氭嫙鏈猴級鍑虹幇鐨勯棶棰樸€?/li>
- Exception锛氱▼搴忔湰韬彲浠ュ鐞嗙殑寮傚父銆倄ception 绫绘湁涓€涓噸瑕佺殑瀛愮被 RuntimeException銆俁untimeException 寮傚父鐢盝ava铏氭嫙鏈烘姏鍑恒€侼ullPointerException锛堣璁块棶鐨勫彉閲忔病鏈夊紩鐢ㄤ换浣曞璞℃椂锛屾姏鍑鸿寮傚父锛夈€丄rithmeticException锛堢畻鏈繍绠楀紓甯革紝涓€涓暣鏁伴櫎浠?鏃讹紝鎶涘嚭璇ュ紓甯革級鍜?nbsp;ArrayIndexOutOfBoundsException 锛堜笅鏍囪秺鐣屽紓甯革級銆?/li>
finally鍧椾笉浼氳鎵ц鐨勫洓绉嶆儏鍐碉細- 鍦╢inally璇彞鍧楃涓€琛屽彂鐢熶簡寮傚父銆?鍥犱负鍦ㄥ叾浠栬锛宖inally鍧楄繕鏄細寰楀埌鎵ц锛?/li>
- 鍦ㄥ墠闈㈢殑浠g爜涓敤浜哠ystem.exit(int)宸查€€鍑虹▼搴忋€?鑻ヨ璇彞鍦ㄥ紓甯歌鍙ヤ箣鍚庯紝finally浼氭墽琛岋紱
- 绋嬪簭鎵€鍦ㄧ殑绾跨▼姝讳骸锛?/li>
- 鍏抽棴CPU锛?/li>
18.BIO銆丯IO銆丄IO鏈変粈涔堝尯鍒紵- BIO (Blocking I/O): 鍚屾闃诲I/O妯″紡锛屾暟鎹殑璇诲彇鍐欏叆蹇呴』闃诲鍦ㄤ竴涓嚎绋嬪唴绛夊緟鍏跺畬鎴愩€傚湪娲诲姩杩炴帴鏁颁笉鏄壒鍒珮锛堝皬浜庡崟鏈?000锛夌殑鎯呭喌涓嬶紝杩欑妯″瀷鏄瘮杈冧笉閿欑殑锛屽彲浠ヨ姣忎竴涓繛鎺ヤ笓娉ㄤ簬鑷繁鐨?I/O 骞朵笖缂栫▼妯″瀷绠€鍗曪紝涔熶笉鐢ㄨ繃澶氳€冭檻绯荤粺鐨勮繃杞姐€侀檺娴佺瓑闂銆傜嚎绋嬫睜鏈韩灏辨槸涓€涓ぉ鐒剁殑婕忔枟锛屽彲浠ョ紦鍐蹭竴浜涚郴缁熷鐞嗕笉浜嗙殑杩炴帴鎴栬姹傘€備絾鏄紝褰撻潰瀵瑰崄涓囩敋鑷崇櫨涓囩骇杩炴帴鐨勬椂鍊欙紝浼犵粺鐨?BIO 妯″瀷鏄棤鑳戒负鍔涚殑銆傚洜姝わ紝鎴戜滑闇€瑕佷竴绉嶆洿楂樻晥鐨?I/O 澶勭悊妯″瀷鏉ュ簲瀵规洿楂樼殑骞跺彂閲忋€?/li>
- NIO (New I/O): NIO鏄竴绉嶅悓姝ラ潪闃诲鐨処/O妯″瀷锛屽湪Java 1.4 涓紩鍏ヤ簡NIO妗嗘灦锛屽搴?java.nio 鍖咃紝鎻愪緵浜?Channel , Selector锛孊uffer绛夋娊璞°€侼IO涓殑N鍙互鐞嗚В涓篘on-blocking锛屼笉鍗曠函鏄疦ew銆傚畠鏀寔闈㈠悜缂撳啿鐨勶紝鍩轰簬閫氶亾鐨処/O鎿嶄綔鏂规硶銆?NIO鎻愪緵浜嗕笌浼犵粺BIO妯″瀷涓殑
Socket
鍜?nbsp;ServerSocket
鐩稿搴旂殑SocketChannel
鍜?nbsp;ServerSocketChannel
涓ょ涓嶅悓鐨勫鎺ュ瓧閫氶亾瀹炵幇,涓ょ閫氶亾閮芥敮鎸侀樆濉炲拰闈為樆濉炰袱绉嶆ā寮忋€傞樆濉炴ā寮忎娇鐢ㄥ氨鍍忎紶缁熶腑鐨勬敮鎸佷竴鏍凤紝姣旇緝绠€鍗曪紝浣嗘槸鎬ц兘鍜屽彲闈犳€ч兘涓嶅ソ锛涢潪闃诲妯″紡姝eソ涓庝箣鐩稿弽銆傚浜庝綆璐熻浇銆佷綆骞跺彂鐨勫簲鐢ㄧ▼搴忥紝鍙互浣跨敤鍚屾闃诲I/O鏉ユ彁鍗囧紑鍙戦€熺巼鍜屾洿濂界殑缁存姢鎬э紱瀵逛簬楂樿礋杞姐€侀珮骞跺彂鐨勶紙缃戠粶锛夊簲鐢紝搴斾娇鐢?NIO 鐨勯潪闃诲妯″紡鏉ュ紑鍙戙€?/li> - AIO (Asynchronous I/O): AIO 涔熷氨鏄?NIO 2銆傚湪 Java 7 涓紩鍏ヤ簡 NIO 鐨勬敼杩涚増 NIO 2,瀹冩槸寮傛闈為樆濉炵殑IO妯″瀷銆傚紓姝?IO 鏄熀浜庝簨浠跺拰鍥炶皟鏈哄埗瀹炵幇鐨勶紝涔熷氨鏄簲鐢ㄦ搷浣滀箣鍚庝細鐩存帴杩斿洖锛屼笉浼氬牭濉炲湪閭i噷锛屽綋鍚庡彴澶勭悊瀹屾垚锛屾搷浣滅郴缁熶細閫氱煡鐩稿簲鐨勭嚎绋嬭繘琛屽悗缁殑鎿嶄綔銆侫IO 鏄紓姝O鐨勭缉鍐欙紝铏界劧 NIO 鍦ㄧ綉缁滄搷浣滀腑锛屾彁渚涗簡闈為樆濉炵殑鏂规硶锛屼絾鏄?NIO 鐨?IO 琛屼负杩樻槸鍚屾鐨勩€傚浜?NIO 鏉ヨ锛屾垜浠殑涓氬姟绾跨▼鏄湪 IO 鎿嶄綔鍑嗗濂芥椂锛屽緱鍒伴€氱煡锛屾帴鐫€灏辩敱杩欎釜绾跨▼鑷杩涜 IO 鎿嶄綔锛孖O鎿嶄綔鏈韩鏄悓姝ョ殑銆?/li>
以上是关于Java闈㈣瘯鍩虹的主要内容,如果未能解决你的问题,请参考以下文章
銆愰潰璇曠瘒銆慔TML銆丆SS闈㈣瘯鐭ヨ瘑鐐归泦閿︼紝涓€鏂囧氨澶熶簡