iT邦幫忙

鐵人檔案

2024 iThome 鐵人賽
回列表
Software Development

深入淺出Java 30天 系列

Effective Java是一本出版很多年,也很多人推薦的Java書籍,值得初階Java開發者了解更多Java的功能,也可以讓有多年經驗的Java開發人員,更深入了解Java。這次參賽將會介紹Effective Java前面二十幾個Item,帶領大家更了解Java的設計。

鐵人鍊成 | 共 30 篇文章 | 12 人訂閱 訂閱系列文 RSS系列文
DAY 21

Day 21: 最好使用composition而不是繼承(下)

昨天介紹了繼承的缺點,以及可以怎麼用composition改寫,但是昨天的改法比較沒那麼彈性,因為Set有多種不同資料結構的類別可以使用,上面的範例只能擴充Ha...

2024-08-21 ‧ 由 Judy Huang 分享
DAY 22

Day 22: 設計並記錄繼承的使用方式,否則禁止使用繼承

在前兩天的時候有提過,盡量使用composition,而不是繼承,但如果真得需要使用繼承,需要做哪些事呢? 必須撰寫文件和說明紀錄 需要說明可以覆寫的方法(pu...

2024-08-22 ‧ 由 Judy Huang 分享
DAY 23

Day 23: 偏好使用interface而不是抽象類別(abstract class)(上)

Java的世界裡,提供了兩種機制幫助定義類別的架構,一個是interface,一個是抽象類別。這兩種機制主要的差別在於,一個是使用實作的方式,一個是使用繼承的方...

2024-08-23 ‧ 由 Judy Huang 分享
DAY 24

Day 24: 偏好使用interfaces而不是抽象類別(abstract class)(下)

雖然昨天說了很多應該用interface,不建議用抽象類別的原因,但interface有個缺點:無法重複使用程式碼,如果想要有interface可mixins的...

2024-08-24 ‧ 由 Judy Huang 分享
DAY 25

Day 25: Nested class的四種類型(上)

nested class是一種被宣告在class裡面的class,也就是所謂的inner classes,共有四種類型:static member classe...

2024-08-25 ‧ 由 Judy Huang 分享
DAY 26

Day 26: Nested class的四種類型(下)

什麼是anonymous class? anonymous class就像anonymous這個字,"匿名"描述的一樣,簡單的說就是沒有名字...

2024-08-26 ‧ 由 Judy Huang 分享
DAY 27

Day 27: 不建議在Java 5之後的新程式碼使用raw type(上)

在Java 5出現泛型之後,開發人員開始可以為類別、方法或interface添加型別參數(type parameters)(ex: List<Intege...

2024-08-27 ‧ 由 Judy Huang 分享
DAY 28

Day 28: 不建議在Java 5之後的新程式碼使用raw type(下)

有了泛型之後,開發人員不用自己強制轉換型別,compiler會根據宣告的時候,型別參數的型別幫你轉,程式碼看起來比較簡潔,型別轉換也比較安全,因為compile...

2024-08-28 ‧ 由 Judy Huang 分享
DAY 29

Day 29: 優先使用list而不是array(上)

今天和明天會說明為什麼最好優先使用lists,並且說明arrays跟lists有什麼差異,所以才會這麼建議。 array跟list有什麼不同? arrays是協...

2024-08-29 ‧ 由 Judy Huang 分享
DAY 30

Day 30: 優先使用list而不是array(下)

昨天說明為什麼最好優先使用list,看起來list似乎是因為可以使用泛型,享受到泛型的優點,所以才鼓勵優先使用list,那麼array是否也可以使用或混用泛型,...

2024-08-30 ‧ 由 Judy Huang 分享