更新時(shí)間:2020-03-25 13:33:01 來源:動(dòng)力節(jié)點(diǎn) 瀏覽2562次
大學(xué)畢業(yè)生都會(huì)選擇參加編程培訓(xùn)從而獲得一份高薪的工作,尤其像上海、北京這樣的一線城市,選擇參加編程培訓(xùn)的人員更是多之更廣,很多同學(xué)在提升自己各個(gè)方面的能力方面都很無措,今天上海動(dòng)力節(jié)點(diǎn)IT培訓(xùn)小編就給大家分享一下作為一個(gè)Java程序員應(yīng)該提升編程方面的能力:
拒絕初始化
在Java中,開發(fā)者常常通過構(gòu)造函數(shù)進(jìn)行對(duì)象初始化。事實(shí)上,我們完全可以在無需調(diào)用構(gòu)造函數(shù)的情況下,通過其他方式實(shí)現(xiàn)對(duì)象分配。
(1)大家可以將所有變量聲明為私有。要訪問該類外的對(duì)象,大家可使用GET與SET方法。
(2)對(duì)每個(gè)對(duì)象,編寫一個(gè)新的私有boolean變量并對(duì)其進(jìn)行初始化。
(3)編寫一個(gè)非構(gòu)造函數(shù)類,其將確保每個(gè)對(duì)象會(huì)在接受調(diào)用之前進(jìn)行初始化。
保護(hù)類、方法與變量
在代碼當(dāng)中,類、方法與變量分為私有與公共兩類。私有類無法輕松進(jìn)行訪問,公共方法與變量則易于方法,也因此常常成為攻擊突破口。因此,請(qǐng)盡可能限制其范圍。
永遠(yuǎn)對(duì)范圍進(jìn)行預(yù)定義
大多數(shù)開發(fā)者完全依賴于軟件包自身的范圍設(shè)定,事實(shí)上我們應(yīng)當(dāng)堅(jiān)持對(duì)代碼范圍進(jìn)行預(yù)定義。很多類本身并非完全封閉,這意味著攻擊者能夠?qū)ζ涫┮怨簟:诳涂梢岳脝我宦┒床迦胱约旱念悾M(jìn)而從代碼中提取敏感信息。JVM在默認(rèn)情況下即不會(huì)封閉,不過允許大家在該軟件包內(nèi)進(jìn)行類封閉。
避免使用內(nèi)部類
一般來講,開發(fā)者會(huì)在同一軟件包內(nèi)其它類需要時(shí)使用內(nèi)部類。這些內(nèi)部類通常可供同一軟件包內(nèi)全部類進(jìn)行訪問。
確保類不可克隆
Java提供一項(xiàng)功能,用于在需要時(shí)對(duì)自有類進(jìn)行克隆。然而這項(xiàng)功能往往被黑客所利用,從代碼中復(fù)制代碼實(shí)例并竊取必要信息。
要解決這個(gè)問題,大家只需要在代碼中的每個(gè)類中添加以下代碼。
如果大家希望自己的class具備可克隆性,同時(shí)仍然盡可能避免安全問題,那么則可自行定義克隆方法,并將其設(shè)置為final。
以上就是動(dòng)力節(jié)點(diǎn)java培訓(xùn)機(jī)構(gòu)的小編針對(duì)“上海Java程序員培訓(xùn),教你正規(guī)編程”的內(nèi)容進(jìn)行的回答,希望對(duì)大家有所幫助,如有疑問,請(qǐng)?jiān)诰€咨詢,有專業(yè)老師隨時(shí)為你服務(wù)。
相關(guān)閱讀
0基礎(chǔ) 0學(xué)費(fèi) 15天面授
有基礎(chǔ) 直達(dá)就業(yè)
業(yè)余時(shí)間 高薪轉(zhuǎn)行
工作1~3年,加薪神器
工作3~5年,晉升架構(gòu)
提交申請(qǐng)后,顧問老師會(huì)電話與您溝通安排學(xué)習(xí)
初級(jí) 202925
初級(jí) 203221
初級(jí) 202629
初級(jí) 203743