讀java程式設計建議 筆記一

2021-08-07 23:54:55 字數 900 閱讀 2452

1.三元操作符的型別務必一致

int i = 80;

string s = string.valueof(i<100?90:100);

string s1 = string.valueof(i<100?90:100.1);

system.out.print(s.equal(s1));

結果是true還是false呢,結果是false;因為s三元比較符中有浮點型,因此90轉換為90.0啦,哈哈,

三元操作符必須要返回乙個資料,並且必須要求是確定的,不能出現條件為true時返回整型,條件為false時返回true。

如果兩個型別能夠相互轉換,則轉換為範圍大的,否則,轉換為object。

2.避免帶有變長引數的方法過載

3.自增陷阱

i=0;

i = i++;我還是我,i依然是0

4.顯式的宣告uid,實現序列化介面時。

5.在序列化類中,不使用建構函式為final 變數賦值,因為反序列化時, 建構函式不會重新執行;

反序列化時final變數在以下情況不會被重新賦值:

(1) 通過建構函式為final變數賦值;

(2)通過方法返回值為final變數賦值;

(3)final修飾的屬性不是基本型別;

6.可以使用序列化類的私有方法巧妙的解決部分屬性持久化問題。

7.易變業務使用指令碼語言編寫。

8.assert 斷言適用場景:

(1)在私有方法中放置assert作為輸入引數的校驗

(2)流程控制中不可能達到的區域

(3)建立程式探針,如果入參不滿足條件,業務也就沒有必要執行下去了。

9.不要只替換乙個.class類,應整個war包替換,例如對於具有常量的類就會出現問題;

讀《java程式設計思想》摘( )

所有程式語言都提供抽象機制。可以認為,人們所能夠解決問題的複雜性直接取決於抽象的型別和質量。程式設計師必須建立起機器模型 位於 解空間 內,這是你對問題建模的地方,例如計算機 和實際待解決問題模型 位於 問題空間 內,這是問題存在的地方,例如一項業務 之間的聯絡。這種思想的實質是 程式可以通過新增新...

讀《程式設計珠璣》筆記

程式設計珠璣 是一本很好的,經典的程式設計書。這兩天開始讀,有種 相見恨晚 的感覺。書中通過講述作者自己的親身體會來說明程式設計的藝術。很有感染力。第一章講述了乙個 號碼排序的故事。強調化蘩為簡的重要性。很多問題,咋一看挺難的,如果仔細分析轉化,可能會發現其實很簡單。第二章二分搜尋和排序在實際問題處...

讀《程式設計珠璣》 (一)

第一章 開篇 程式設計中需求的明確化非常重要,開篇兩人的對話對此進行了說明 a 我該如何對磁碟檔案進行排序?b 需要排序的內容是什麼?檔案中有多少條記錄?每個記錄的格式是什麼?a 該檔案包含至多10,000,000個記錄,每條記錄都是乙個7位整數。b 如果檔案那麼小,為什麼要使用磁碟排序呢?為什麼不...