以下是一些提示,可以幫助您成長為 Java 開發(fā)人員并獲得更多有關(guān)該語言的知識。
1. 正確掌握基礎(chǔ)知識
由于Java為開發(fā)人員提供了如此多的功能和選項(xiàng),人們有時會被引誘在太短的時間內(nèi)學(xué)習(xí)太多的東西。因此,他們獲得了Java提供的一些選項(xiàng)的“零碎”知識,但他們的基礎(chǔ)知識懸而未決。當(dāng)我這么說時,請相信我,Java 是一種編程語言,但是,如果您注意簡單的基礎(chǔ)知識,這很容易;如果您變得貪婪并試圖采取較短的前進(jìn)路線,這可能會令人沮喪。
2. 不要只看書
好吧,如果你學(xué)習(xí)Java的唯一目的是通過第二天的考試,那就繼續(xù)把所有你能做的事情都做好,你可能會得到及格分?jǐn)?shù)。然而;如果你真的認(rèn)真學(xué)習(xí)Java并變得更好,最好的方法不是閱讀,而是實(shí)現(xiàn)。獲取知識,然后以代碼的形式執(zhí)行所學(xué)的知識。如果你不愿意弄臟你的手,你永遠(yuǎn)無法學(xué)習(xí)Java。
3. 了解您的代碼和算法
即使您正在編寫具有“if else”語句的簡單代碼,作為初學(xué)者,也要從在一張紙上實(shí)現(xiàn)代碼開始。一旦您了解了代碼背后的想法,算法和整個編譯器過程就會看起來如此有意義。即使對于專家來說,解決復(fù)雜問題或制定算法來解決Java程序的最佳方法是將問題分解為子部分,然后嘗試為每個子部分設(shè)計解決方案。當(dāng)您開始獲得正確的解決方案時,您將有信心進(jìn)行更多工作。
4.不要忘記分配內(nèi)存
這個技巧對于那些從C,C++切換到Java的人特別有用。在Java中使用“new”關(guān)鍵字進(jìn)行內(nèi)存分配是必要的,因?yàn)镴ava是一種動態(tài)編程語言。C,C++沒有明確具有此功能,因此在Java中處理數(shù)組和對象聲明時必須小心。不使用“new”關(guān)鍵字將在代碼中顯示空指針異常。
例如:
1
int array = new int [5];
請注意 Java 和 C 或 C++ 中數(shù)組聲明的差異。
5. 避免創(chuàng)建無用的對象
在 Java 中創(chuàng)建對象時,會耗盡系統(tǒng)的內(nèi)存和處理器速度。由于對象創(chuàng)建不完整而不為其分配內(nèi)存,因此最好檢查對象要求,不要在代碼中創(chuàng)建不需要的對象。
例如:
public class vehicles {
public List getvehicles(){
if(null == vehicles){ // this ensures that the object is initialised only when its required
countries = new ArrayList();
}
return vehicles;
}
}
6.界面比抽象類好
Java中沒有多重繼承,在學(xué)習(xí)語言時,這將被喂給你很多次,你可能永遠(yuǎn)不會忘記它的余生。然而;這里的提示是不要記住 Java 中沒有多重繼承,但如果你想在不使用 extend 關(guān)鍵字的情況下實(shí)現(xiàn)多重繼承之類的東西,接口會派上用場。請記住,在 Java 中,當(dāng)任何事情都不如你所愿時,你將始終擁有接口。然而,抽象類并不總是讓程序員自由地使用各種方法;接口只有抽象方法,因此可以完成抽象類的工作,并且還具有其他優(yōu)點(diǎn)。
7. 標(biāo)準(zhǔn)庫是一種幸福
從編程的角度來看,Java相對于其前輩的最大優(yōu)勢可能是其豐富的標(biāo)準(zhǔn)庫方法集。使用Java的標(biāo)準(zhǔn)庫使程序員的工作變得簡單,更高效,并為代碼提供了組織良好的流程。此外,可以在庫中指定的方法上輕松執(zhí)行操作。
8. 首選基元類而不是包裝類
毫無疑問,包裝類非常有用,但它們通常比基元類慢。基元類只有值,而包裝類存儲有關(guān)整個類的信息。此外,由于包裝類通常處理對象值,因此像基元類一樣比較它們不會給出預(yù)期的結(jié)果,因?yàn)樗罱K會比較對象而不是存儲在其中的值。
例如:
int num_1 = 10;
int num_2 = 10;
Integer wrapnum_1 = new Integer(10);
Integer wrapnum_2 = new Integer(10);
System.out.println(num_1 == num_2);
System.out.println(wrapnum_1 == wrapnum_2);
注意:在上面的示例中,第二個 print 語句不會顯示 true,因?yàn)檎诒容^包裝類對象而不是它們的值。
9. 處理字符串
由于面向?qū)ο蟮木幊虒⒆址诸悶橐粋€類,因此兩個字符串的簡單串聯(lián)可能會導(dǎo)致在Java中創(chuàng)建新的字符串對象,最終影響系統(tǒng)的內(nèi)存和速度。最好直接實(shí)例化字符串對象,而不使用構(gòu)造函數(shù)來實(shí)現(xiàn)此目的。
例如:
String slow = new String ("This string is making the system slow"); //slow instantiation
String fast = "This string is better"; //fast instantiation
10. 代碼,代碼,代碼
關(guān)于 Java 有很多東西需要學(xué)習(xí),以至于您無法克服這種編程語言,但是它變得越來越有趣和有趣;重要的是要保持內(nèi)在的學(xué)習(xí)興趣和對變得更好的渴望。像Java這樣的編程語言可以自己學(xué)習(xí)并取得巨大成功,但唯一需要的是不斷學(xué)習(xí)和編碼來測試你學(xué)到的東西。爪哇很像運(yùn)動;你在練習(xí)中出汗越多,你在比賽中流血就越少。
免費(fèi)企業(yè)建站最專業(yè)的解決方案