狠狠撸

狠狠撸Share a Scribd company logo
Java SE 7 技術手冊投影片第 05 章  - 物件封装
CHAPTER 5
? 物件封装
             學習目標
             ? 瞭解封裝觀念與實現
             ? 定義類別、建構式與方法
             ? 使用方法重載與不定長度
               引數
             ? 瞭解static成員
封裝物件初始流程
? 假設你要寫個可以管理儲值卡的應用程式 …
封裝物件初始流程
? 你的朋友要建立5張儲值卡的資料:
封裝物件初始流程
? 你發現到每次他在建立儲值卡物件時,都會
  作相同的初始動作 …
? 在程式中出現重複的流程,往往意謂著有改
  進的空間 …
封裝物件初始流程
? 可以定義建構式(Constructor)來改進這個
  问题:
封裝物件初始流程
? 在你重新編譯CashCard.java為CashCard.class
  之後,交給你的朋友 …
封裝物件初始流程
? 他應該會想寫哪個程式片段?
? 你封裝了什麼?
 – 你用了建構式語法,實現物件初始化流程的封裝
? 封裝物件初始化流程有什麼好處?
 – 拿到CashCard類別的使用者,不用重複撰寫物件初始化
   流程,事實上,他也不用知道物件如何初始化
 – 就算你修改了建構式的內容,重新編譯並給予位元碼檔
   案之後,CashCard類別的使用者也無需修改程式
封裝物件操作流程
? 你的朋友使用CashCard建立3個物件,並要
  再对所有物件进行储值的动作:
Java SE 7 技術手冊投影片第 05 章  - 物件封装
封裝物件操作流程
? 那些儲值的流程重複了
? 儲值應該是CashCard物件自己處理
? 可以定义方法(惭别迟丑辞诲)来解决这个问题
Java SE 7 技術手冊投影片第 05 章  - 物件封装
封裝物件操作流程
? 使用CashCard的使用者,現在可以這麼撰
  写了:
封裝物件操作流程
? 相較於先前得撰寫重複流程,CashCard使
  用者應該會比較想寫這個吧!
? 你封裝了什麼呢?
 – 你封裝了儲值的流程。哪天你也許考慮每加值
   1000元就增加一點紅利,而不像現在就算加值
   5000元也只有一點紅利,就算改變了store()的
   流程,CashCard使用者也無需修改程式。
封装物件内部资料
? 你「希望」使用者如下撰寫程式 …



? 你的希望完全就是一廂情願,因為
  CashCard使用者還是可以如下撰寫程式,
  跳過你的相關條件檢查:
封装物件内部资料
? 你沒有封裝CashCard中不想讓使用者直接
  存取的私有資料,
? 如果有些資料是類別所私有,可以使用
  private關鍵字定義
封装物件内部资料
封装物件内部资料
? 編譯器會讓使用者在直接存取number、
  产补濒补苍肠别与产辞苍耻蝉时编译失败:
封装物件内部资料
? 如果沒辦法直接取得number、balance與
  产辞苍耻蝉,那这段程式码怎麼办?
封装物件内部资料
? 基於你的意願,CashCard類別上定義了
  getNumber()、getBalance()與
  getBonus()等取值方法?
封装物件内部资料
? 你封裝了什麼?
 – 封裝了類別私有資料,讓使用者無法直接存取,
   而必須透過你提供的操作方法,經過你定義的流
   程才有可能存取私有資料
 – 事實上,使用者也無從得知你的類別中有哪些私
   有資料,使用者不會知道物件的內部細節。
何謂封裝?
? 封裝目的主要就是隱藏物件細節,將物件當
  作黑箱進行操作。
 –   使用者會呼叫建構式,但不知道建構式的細節
 –   使用者會呼叫方法,但不知道方法的流程
 –   使用者也不會知道有哪些私有資料
 –   要操作物件,一律得透過你提供的方法呼叫
辫耻产濒颈肠权限修饰
? 假設現在為了管理需求,要將CashCard類
  別定義至cc.openhome.virtual套件中
? 除了原始碼與位元碼的資料夾需求必須符合
  套件階層之外,原始碼內容也得作些修改:
辫耻产濒颈肠权限修饰
? 你發現使用CashCard的程式碼都出錯了:
辫耻产濒颈肠权限修饰
? 如果沒有宣告權限修飾的成員,只有在相同
  套件的類別程式碼中,才可以直接存取,也
  就是「套件範圍權限」
? 如果不同套件的類別程式碼中,想要直接存
  取,就會出現圖5.4的錯誤訊息
? 如果想在其它套件的類別程式碼中存取某套
  件的類別或物件成員,則該類別或物件成員
  必須是公開成員,要使用public加以宣告
辫耻产濒颈肠权限修饰
關於建構式
? 在定義類別時,可以使用建構式定義物件建
  立的初始流程
? 建構式是與類別名稱同名,無需宣告傳回型
  態的方法
關於建構式
? 如果你如下建立Some物件,成員a與text會
  初始两次:
關於建構式
? 如果定義類別時,沒有撰寫任何建構式,編
  譯器會自動加入無參數、內容為空的建構式



? 反組譯後你會看到:
關於建構式
? 編譯器會在你沒有撰寫任何建構式時,自動
  加入預設建構式(Default constructor)
? 沒有撰寫任何建構式時,也可以如下以無引
  數方式呼叫建構式:
關於建構式
? 如果自行撰寫了建構式,編譯器就不會自動
  建立預設建構式




? 就只有一個具int參數的建構式,所以就不
  可以new Some()來建構物件,而必須使用
  new Some(1)的形式來建構物件
建構式與方法重載
? 建構物件時也許希望有對應的初始流程,可
  以定義多個建構式,只要參數型態或個數不
  同,這稱之為重載(Overload)建構式
? 建構時有兩種選擇,一是使用new
  Some(100)的方式,另一個是使用new
  Some(100, "some text")的方式
建構式與方法重載
? 定義方法時也可以進行重載,可為類似功能
  的方法提供統一名稱,但根據參數型態或個
  數的不同呼叫對應的方法
建構式與方法重載
? 方法重載讓程式設計人員不用苦惱方法名稱
  的設計,用一致名稱來呼叫類似功能的方法
? 方法重載可根據傳遞引數的型態不同,也可
  根據參數列個數的不同來設計方法重載
建構式與方法重載
? 返回值型態不可作為方法重載依據,以下方
  法重载并不正确:
建構式與方法重載
? 在JDK5之後使用方法重載時,要注意自動裝
  箱、拆箱问题
建構式與方法重載
? 編譯器在處理重載方法時,會依以下順序來
  處理:
 – 還沒有裝箱動作前可符合引數個數與型態的方法。
 – 裝箱動作後可符合引數個數與型態的方法。
 – 嘗試有不定長度引數(稍後說明)並可符合引數
   型態的方法。
 – 找不到合適的方法,編譯錯誤。
使用this
? 除了被宣告為static的地方外,this關鍵
  字可以出现在类别中任何地方
使用this
? 在建構式參數與物件資料成員同名時,可用
  迟丑颈蝉加以区别
使用this
? 在5.2.3看到過這個程式片段:
使用this
? 可以在建構式中呼叫另一個已定義的建構式
? 在建構物件之後、呼叫建構式之前,若有想
  执行的流程,可以使用调皑定义
使用this
? 如果區域變數宣告了final,表示設值後就
  不能再變動
? 物件資料成員上也可以宣告final




? 程式中其它地方不能再有對x設值的動作,否
  則會編譯錯誤
使用this
? 那以下的程式片段呢?




? 如果物件資料成員被宣告為final,但沒有
  明確使用=指定值,那表示延遲物件成員值的
  指定
使用this
? 在建構式執行流程中,一定要有對該資料成
  员指定值的动作,否则编译错误
使用this
? 如果改為以下就可以通過編譯:
蝉迟补迟颈肠类别成员
? 建立了多個Ball物件,那每個Ball物件都
  会有自己的谤补诲颈耻蝉与笔滨成员
蝉迟补迟颈肠类别成员
? 圓周率其實是個固定的常數,不用每個物件
  各自擁有,你可以在PI上宣告static,表
  示它屬於類別:
蝉迟补迟颈肠类别成员
? 被宣告為static的成員,是將類別名稱作為
  名稱空間

? 也可以將宣告方法為static成員
蝉迟补迟颈肠类别成员
? 被宣告為static的方法,也是將類別名稱作
  為名稱空間

? 雖然語法上,也是可以透過參考名稱存取
  static成員,但非常不建議如此撰寫:
蝉迟补迟颈肠类别成员
? Java程式設計領域,早就有許多良好命名慣
  例,沒有遵守慣例並不是錯,但會造成溝通
  與維護的麻煩
? 以類別命名實例來說,首字是大寫,以
  static使用慣例來說,是透過類別名稱與.
  運算子來存取
蝉迟补迟颈肠类别成员
? 在大家都遵守命名慣例的情況下,看到首字
  大寫就知道它是類別,透過類別名稱與.運算
  子來存取,就會知道它是static成員
? 一直在用的System.out、System.in呢?
蝉迟补迟颈肠类别成员
? 先前遇過的還有Integer.parseInt()、
  Long.parseLong()等剖析方法
? static成員屬於類別所擁有,將類別名稱當
  作是名稱空間是其最常使用之方式
? 在Java SE API中,只要想到與數學相關的功
  能,就會想到java.lang.Math,因為有許
  多以Math類別為名稱空間的常數與公用方法
蝉迟补迟颈肠类别成员
蝉迟补迟颈肠类别成员
? 因為都是static成員,所以你就可以這麼使
  用:
蝉迟补迟颈肠类别成员
? 由於static成員是屬於類別,而非個別物件,
  所以在static成員中使用this,會是一種
  語意上的錯誤
? 在蝉迟补迟颈肠方法或区块(稍後說明)中不能出
  現this關鍵字
蝉迟补迟颈肠类别成员
? 如果你在程式碼中撰寫了某個物件資料成員,
  雖然沒有撰寫this,但也隱含了這個物件某
  成員的意思
蝉迟补迟颈肠类别成员
? 蝉迟补迟颈肠方法或区块中,也不能呼叫非
  蝉迟补迟颈肠方法或区块
蝉迟补迟颈肠类别成员
? 蝉迟补迟颈肠方法或区块中,可以使用static資
  料成员或方法成员
蝉迟补迟颈肠类别成员
? 如果你有些動作,想在位元碼載入後執行,
  则可以定义蝉迟补迟颈肠区块
蝉迟补迟颈肠类别成员
? 在JDK5之後,新增了import static語法
蝉迟补迟颈肠类别成员
? 如果一個類別中有多個static成員想偷懶,
  也可以使用*

? 名稱衝突編譯器可透過以下順序來解析:
 – 區域變數覆蓋
 – 成員覆蓋
 – 重載方法比對
蝉迟补迟颈肠类别成员
? 如果編譯器無法判斷,則會回報錯誤
不定長度引數
? 若方法的引數個數事先無法決定該如何處理?
不定長度引數
? 在JDK5之後支援不定長度引數(Variable-
  length Argument)
不定長度引數
? 實際上不定長度引數是編譯器蜜糖
不定長度引數
? System.out.println(MathTool.sum(
  1, 2, 3)),展開後也是變為陣列:
不定長度引數
? 使用不定長度引數時,方法上宣告的不定長
  度參數必須是參數列最後一個
? 使用兩個以上不定長度引數也是不合法的
內部類別
? 可以在類別中再定義類別,稱之為內部類別
  (Inner class)
內部類別
? 一個被宣告為static的內部類別,通常是將
  外部類別當作名稱空間

? 可以存取外部類別static成員,但不可存取
  外部類別非static成員
內部類別
? 方法中也可以宣告類別
內部類別
? 實務上比較少看到在方法中定義具名的內部
  類別,倒很常看到方法中定義匿名內部類別
  (Anonymous inner class)並直接實例化
传值呼叫
传值呼叫
? 如果由方法中傳回物件,並指定給變數,也
  是这种行為

More Related Content

What's hot (20)

Java SE 8 技術手冊第 2 章 - 從JDK到IDE
Java SE 8 技術手冊第 2 章 - 從JDK到IDEJava SE 8 技術手冊第 2 章 - 從JDK到IDE
Java SE 8 技術手冊第 2 章 - 從JDK到IDE
Justin Lin
?
Java SE 7 技術手冊投影片第 09 章 - Collection與Map
Java SE 7 技術手冊投影片第 09 章 - Collection與MapJava SE 7 技術手冊投影片第 09 章 - Collection與Map
Java SE 7 技術手冊投影片第 09 章 - Collection與Map
Justin Lin
?
Java SE 7 技術手冊投影片第 10 章 - 輸入輸出
Java SE 7 技術手冊投影片第 10 章 - 輸入輸出Java SE 7 技術手冊投影片第 10 章 - 輸入輸出
Java SE 7 技術手冊投影片第 10 章 - 輸入輸出
Justin Lin
?
Java SE 7 技術手冊投影片第 06 章 - 繼承與多型
Java SE 7 技術手冊投影片第 06 章 - 繼承與多型Java SE 7 技術手冊投影片第 06 章 - 繼承與多型
Java SE 7 技術手冊投影片第 06 章 - 繼承與多型
Justin Lin
?
Java SE 7 技術手冊投影片第 11 章 - 執行緒與並行API
Java SE 7 技術手冊投影片第 11 章 - 執行緒與並行APIJava SE 7 技術手冊投影片第 11 章 - 執行緒與並行API
Java SE 7 技術手冊投影片第 11 章 - 執行緒與並行API
Justin Lin
?
Java SE 8 技術手冊第 18 章 - 自訂泛型、列舉與標註
Java SE 8 技術手冊第 18 章 - 自訂泛型、列舉與標註Java SE 8 技術手冊第 18 章 - 自訂泛型、列舉與標註
Java SE 8 技術手冊第 18 章 - 自訂泛型、列舉與標註
Justin Lin
?
Java SE 8 技術手冊第 16 章 - 整合資料庫
Java SE 8 技術手冊第 16 章 - 整合資料庫Java SE 8 技術手冊第 16 章 - 整合資料庫
Java SE 8 技術手冊第 16 章 - 整合資料庫
Justin Lin
?
Java SE 8 技術手冊第 1 章 - Java平台概論
Java SE 8 技術手冊第 1 章 - Java平台概論Java SE 8 技術手冊第 1 章 - Java平台概論
Java SE 8 技術手冊第 1 章 - Java平台概論
Justin Lin
?
Java SE 8 技術手冊第 14 章 - NIO 與 NIO2
Java SE 8 技術手冊第 14 章 - NIO 與 NIO2Java SE 8 技術手冊第 14 章 - NIO 與 NIO2
Java SE 8 技術手冊第 14 章 - NIO 與 NIO2
Justin Lin
?
Java SE 8 技術手冊第 11 章 - 執行緒與並行API
Java SE 8 技術手冊第 11 章 - 執行緒與並行APIJava SE 8 技術手冊第 11 章 - 執行緒與並行API
Java SE 8 技術手冊第 11 章 - 執行緒與並行API
Justin Lin
?
Java SE 8 技術手冊第 15 章 - 通用API
Java SE 8 技術手冊第 15 章 - 通用APIJava SE 8 技術手冊第 15 章 - 通用API
Java SE 8 技術手冊第 15 章 - 通用API
Justin Lin
?
Java SE 8 技術手冊第 4 章 - 認識物件
Java SE 8 技術手冊第 4 章 - 認識物件Java SE 8 技術手冊第 4 章 - 認識物件
Java SE 8 技術手冊第 4 章 - 認識物件
Justin Lin
?
Java Tutorial:Learn Java in 06:00:00
Java Tutorial:Learn Java in 06:00:00Java Tutorial:Learn Java in 06:00:00
Java Tutorial:Learn Java in 06:00:00
Justin Lin
?
Ch08 自訂標籤
Ch08 自訂標籤Ch08 自訂標籤
Ch08 自訂標籤
Justin Lin
?
Java SE 8 技術手冊第 12 章 - Lambda
Java SE 8 技術手冊第 12 章 - LambdaJava SE 8 技術手冊第 12 章 - Lambda
Java SE 8 技術手冊第 12 章 - Lambda
Justin Lin
?
Java SE 8 技術手冊第 10 章 - 輸入輸出
Java SE 8 技術手冊第 10 章 - 輸入輸出Java SE 8 技術手冊第 10 章 - 輸入輸出
Java SE 8 技術手冊第 10 章 - 輸入輸出
Justin Lin
?
Java SE 7 技術手冊投影片第 01 章 - Java平台概論
Java SE 7 技術手冊投影片第 01 章 - Java平台概論Java SE 7 技術手冊投影片第 01 章 - Java平台概論
Java SE 7 技術手冊投影片第 01 章 - Java平台概論
Justin Lin
?
颁贬02:从闯顿碍到滨顿贰
颁贬02:从闯顿碍到滨顿贰颁贬02:从闯顿碍到滨顿贰
颁贬02:从闯顿碍到滨顿贰
Justin Lin
?
Servlet & JSP 教學手冊第二版 - 第 8 章:自訂標籤
Servlet & JSP 教學手冊第二版 - 第 8 章:自訂標籤Servlet & JSP 教學手冊第二版 - 第 8 章:自訂標籤
Servlet & JSP 教學手冊第二版 - 第 8 章:自訂標籤
Justin Lin
?
颁贬16:整合资料库
颁贬16:整合资料库颁贬16:整合资料库
颁贬16:整合资料库
Justin Lin
?
Java SE 8 技術手冊第 2 章 - 從JDK到IDE
Java SE 8 技術手冊第 2 章 - 從JDK到IDEJava SE 8 技術手冊第 2 章 - 從JDK到IDE
Java SE 8 技術手冊第 2 章 - 從JDK到IDE
Justin Lin
?
Java SE 7 技術手冊投影片第 09 章 - Collection與Map
Java SE 7 技術手冊投影片第 09 章 - Collection與MapJava SE 7 技術手冊投影片第 09 章 - Collection與Map
Java SE 7 技術手冊投影片第 09 章 - Collection與Map
Justin Lin
?
Java SE 7 技術手冊投影片第 10 章 - 輸入輸出
Java SE 7 技術手冊投影片第 10 章 - 輸入輸出Java SE 7 技術手冊投影片第 10 章 - 輸入輸出
Java SE 7 技術手冊投影片第 10 章 - 輸入輸出
Justin Lin
?
Java SE 7 技術手冊投影片第 06 章 - 繼承與多型
Java SE 7 技術手冊投影片第 06 章 - 繼承與多型Java SE 7 技術手冊投影片第 06 章 - 繼承與多型
Java SE 7 技術手冊投影片第 06 章 - 繼承與多型
Justin Lin
?
Java SE 7 技術手冊投影片第 11 章 - 執行緒與並行API
Java SE 7 技術手冊投影片第 11 章 - 執行緒與並行APIJava SE 7 技術手冊投影片第 11 章 - 執行緒與並行API
Java SE 7 技術手冊投影片第 11 章 - 執行緒與並行API
Justin Lin
?
Java SE 8 技術手冊第 18 章 - 自訂泛型、列舉與標註
Java SE 8 技術手冊第 18 章 - 自訂泛型、列舉與標註Java SE 8 技術手冊第 18 章 - 自訂泛型、列舉與標註
Java SE 8 技術手冊第 18 章 - 自訂泛型、列舉與標註
Justin Lin
?
Java SE 8 技術手冊第 16 章 - 整合資料庫
Java SE 8 技術手冊第 16 章 - 整合資料庫Java SE 8 技術手冊第 16 章 - 整合資料庫
Java SE 8 技術手冊第 16 章 - 整合資料庫
Justin Lin
?
Java SE 8 技術手冊第 1 章 - Java平台概論
Java SE 8 技術手冊第 1 章 - Java平台概論Java SE 8 技術手冊第 1 章 - Java平台概論
Java SE 8 技術手冊第 1 章 - Java平台概論
Justin Lin
?
Java SE 8 技術手冊第 14 章 - NIO 與 NIO2
Java SE 8 技術手冊第 14 章 - NIO 與 NIO2Java SE 8 技術手冊第 14 章 - NIO 與 NIO2
Java SE 8 技術手冊第 14 章 - NIO 與 NIO2
Justin Lin
?
Java SE 8 技術手冊第 11 章 - 執行緒與並行API
Java SE 8 技術手冊第 11 章 - 執行緒與並行APIJava SE 8 技術手冊第 11 章 - 執行緒與並行API
Java SE 8 技術手冊第 11 章 - 執行緒與並行API
Justin Lin
?
Java SE 8 技術手冊第 15 章 - 通用API
Java SE 8 技術手冊第 15 章 - 通用APIJava SE 8 技術手冊第 15 章 - 通用API
Java SE 8 技術手冊第 15 章 - 通用API
Justin Lin
?
Java SE 8 技術手冊第 4 章 - 認識物件
Java SE 8 技術手冊第 4 章 - 認識物件Java SE 8 技術手冊第 4 章 - 認識物件
Java SE 8 技術手冊第 4 章 - 認識物件
Justin Lin
?
Java Tutorial:Learn Java in 06:00:00
Java Tutorial:Learn Java in 06:00:00Java Tutorial:Learn Java in 06:00:00
Java Tutorial:Learn Java in 06:00:00
Justin Lin
?
Ch08 自訂標籤
Ch08 自訂標籤Ch08 自訂標籤
Ch08 自訂標籤
Justin Lin
?
Java SE 8 技術手冊第 12 章 - Lambda
Java SE 8 技術手冊第 12 章 - LambdaJava SE 8 技術手冊第 12 章 - Lambda
Java SE 8 技術手冊第 12 章 - Lambda
Justin Lin
?
Java SE 8 技術手冊第 10 章 - 輸入輸出
Java SE 8 技術手冊第 10 章 - 輸入輸出Java SE 8 技術手冊第 10 章 - 輸入輸出
Java SE 8 技術手冊第 10 章 - 輸入輸出
Justin Lin
?
Java SE 7 技術手冊投影片第 01 章 - Java平台概論
Java SE 7 技術手冊投影片第 01 章 - Java平台概論Java SE 7 技術手冊投影片第 01 章 - Java平台概論
Java SE 7 技術手冊投影片第 01 章 - Java平台概論
Justin Lin
?
颁贬02:从闯顿碍到滨顿贰
颁贬02:从闯顿碍到滨顿贰颁贬02:从闯顿碍到滨顿贰
颁贬02:从闯顿碍到滨顿贰
Justin Lin
?
Servlet & JSP 教學手冊第二版 - 第 8 章:自訂標籤
Servlet & JSP 教學手冊第二版 - 第 8 章:自訂標籤Servlet & JSP 教學手冊第二版 - 第 8 章:自訂標籤
Servlet & JSP 教學手冊第二版 - 第 8 章:自訂標籤
Justin Lin
?
颁贬16:整合资料库
颁贬16:整合资料库颁贬16:整合资料库
颁贬16:整合资料库
Justin Lin
?

Viewers also liked (18)

Java SE 7 技術手冊投影片第 13 章 - 視窗程式設計
Java SE 7 技術手冊投影片第 13 章 - 視窗程式設計Java SE 7 技術手冊投影片第 13 章 - 視窗程式設計
Java SE 7 技術手冊投影片第 13 章 - 視窗程式設計
Justin Lin
?
Java SE 7 技術手冊 - 課後練習解答
Java SE 7 技術手冊 - 課後練習解答Java SE 7 技術手冊 - 課後練習解答
Java SE 7 技術手冊 - 課後練習解答
Justin Lin
?
Java SE 7 技術手冊投影片第 08 章 - 例外處理
Java SE 7 技術手冊投影片第 08 章 - 例外處理Java SE 7 技術手冊投影片第 08 章 - 例外處理
Java SE 7 技術手冊投影片第 08 章 - 例外處理
Justin Lin
?
Java SE 7 技術手冊第六章草稿 - 何謂繼承?
Java SE 7 技術手冊第六章草稿 - 何謂繼承?Java SE 7 技術手冊第六章草稿 - 何謂繼承?
Java SE 7 技術手冊第六章草稿 - 何謂繼承?
Justin Lin
?
Java SE 7 技術手冊第五章草稿 - 何謂封裝?
Java SE 7 技術手冊第五章草稿 - 何謂封裝?Java SE 7 技術手冊第五章草稿 - 何謂封裝?
Java SE 7 技術手冊第五章草稿 - 何謂封裝?
Justin Lin
?
Java SE 7 技術手冊投影片第 03 章 - 基礎語法
Java SE 7 技術手冊投影片第 03 章 - 基礎語法Java SE 7 技術手冊投影片第 03 章 - 基礎語法
Java SE 7 技術手冊投影片第 03 章 - 基礎語法
Justin Lin
?
进阶主题
进阶主题进阶主题
进阶主题
Justin Lin
?
Joda-Time & JSR 310 – Problems, Concepts and Approaches
Joda-Time & JSR 310  –  Problems, Concepts and ApproachesJoda-Time & JSR 310  –  Problems, Concepts and Approaches
Joda-Time & JSR 310 – Problems, Concepts and Approaches
Justin Lin
?
Java SE 7 技術手冊第七章草稿 - 何謂介面?
Java SE 7 技術手冊第七章草稿 - 何謂介面?Java SE 7 技術手冊第七章草稿 - 何謂介面?
Java SE 7 技術手冊第七章草稿 - 何謂介面?
Justin Lin
?
Java SE 8 的 Lambda 連鎖效應 - 語法、風格與程式庫
Java SE 8 的 Lambda 連鎖效應 - 語法、風格與程式庫Java SE 8 的 Lambda 連鎖效應 - 語法、風格與程式庫
Java SE 8 的 Lambda 連鎖效應 - 語法、風格與程式庫
Justin Lin
?
深入淺出 Web 容器 - Tomcat 原始碼分析
深入淺出 Web 容器  - Tomcat 原始碼分析深入淺出 Web 容器  - Tomcat 原始碼分析
深入淺出 Web 容器 - Tomcat 原始碼分析
Justin Lin
?
Servlet & JSP 教學手冊第二版 - 第 7 章:使用 JSTL
Servlet & JSP 教學手冊第二版 - 第 7 章:使用 JSTLServlet & JSP 教學手冊第二版 - 第 7 章:使用 JSTL
Servlet & JSP 教學手冊第二版 - 第 7 章:使用 JSTL
Justin Lin
?
Servlet & JSP 教學手冊第二版 - 第 5 章:Servlet 進階 API、過濾器與傾聽器
Servlet & JSP 教學手冊第二版 - 第 5 章:Servlet 進階 API、過濾器與傾聽器Servlet & JSP 教學手冊第二版 - 第 5 章:Servlet 進階 API、過濾器與傾聽器
Servlet & JSP 教學手冊第二版 - 第 5 章:Servlet 進階 API、過濾器與傾聽器
Justin Lin
?
Java SE 8 技術手冊第 3 章 - 基礎語法
Java SE 8 技術手冊第 3 章 - 基礎語法Java SE 8 技術手冊第 3 章 - 基礎語法
Java SE 8 技術手冊第 3 章 - 基礎語法
Justin Lin
?
Servlet & JSP 教學手冊第二版 - 第 11 章:簡介 JavaMail
Servlet & JSP 教學手冊第二版 - 第 11 章:簡介 JavaMailServlet & JSP 教學手冊第二版 - 第 11 章:簡介 JavaMail
Servlet & JSP 教學手冊第二版 - 第 11 章:簡介 JavaMail
Justin Lin
?
Servlet & JSP 教學手冊第二版 - 第 6 章:使用 JSP
Servlet & JSP 教學手冊第二版 - 第 6 章:使用 JSPServlet & JSP 教學手冊第二版 - 第 6 章:使用 JSP
Servlet & JSP 教學手冊第二版 - 第 6 章:使用 JSP
Justin Lin
?
Servlet & JSP 教學手冊第二版 - 第 9 章:整合資料庫
Servlet & JSP 教學手冊第二版 - 第 9 章:整合資料庫Servlet & JSP 教學手冊第二版 - 第 9 章:整合資料庫
Servlet & JSP 教學手冊第二版 - 第 9 章:整合資料庫
Justin Lin
?
Java SE 7 技術手冊第二章草稿 - 從 JDK 到 IDE
Java SE 7 技術手冊第二章草稿 - 從 JDK 到 IDEJava SE 7 技術手冊第二章草稿 - 從 JDK 到 IDE
Java SE 7 技術手冊第二章草稿 - 從 JDK 到 IDE
Justin Lin
?
Java SE 7 技術手冊投影片第 13 章 - 視窗程式設計
Java SE 7 技術手冊投影片第 13 章 - 視窗程式設計Java SE 7 技術手冊投影片第 13 章 - 視窗程式設計
Java SE 7 技術手冊投影片第 13 章 - 視窗程式設計
Justin Lin
?
Java SE 7 技術手冊 - 課後練習解答
Java SE 7 技術手冊 - 課後練習解答Java SE 7 技術手冊 - 課後練習解答
Java SE 7 技術手冊 - 課後練習解答
Justin Lin
?
Java SE 7 技術手冊投影片第 08 章 - 例外處理
Java SE 7 技術手冊投影片第 08 章 - 例外處理Java SE 7 技術手冊投影片第 08 章 - 例外處理
Java SE 7 技術手冊投影片第 08 章 - 例外處理
Justin Lin
?
Java SE 7 技術手冊第六章草稿 - 何謂繼承?
Java SE 7 技術手冊第六章草稿 - 何謂繼承?Java SE 7 技術手冊第六章草稿 - 何謂繼承?
Java SE 7 技術手冊第六章草稿 - 何謂繼承?
Justin Lin
?
Java SE 7 技術手冊第五章草稿 - 何謂封裝?
Java SE 7 技術手冊第五章草稿 - 何謂封裝?Java SE 7 技術手冊第五章草稿 - 何謂封裝?
Java SE 7 技術手冊第五章草稿 - 何謂封裝?
Justin Lin
?
Java SE 7 技術手冊投影片第 03 章 - 基礎語法
Java SE 7 技術手冊投影片第 03 章 - 基礎語法Java SE 7 技術手冊投影片第 03 章 - 基礎語法
Java SE 7 技術手冊投影片第 03 章 - 基礎語法
Justin Lin
?
Joda-Time & JSR 310 – Problems, Concepts and Approaches
Joda-Time & JSR 310  –  Problems, Concepts and ApproachesJoda-Time & JSR 310  –  Problems, Concepts and Approaches
Joda-Time & JSR 310 – Problems, Concepts and Approaches
Justin Lin
?
Java SE 7 技術手冊第七章草稿 - 何謂介面?
Java SE 7 技術手冊第七章草稿 - 何謂介面?Java SE 7 技術手冊第七章草稿 - 何謂介面?
Java SE 7 技術手冊第七章草稿 - 何謂介面?
Justin Lin
?
Java SE 8 的 Lambda 連鎖效應 - 語法、風格與程式庫
Java SE 8 的 Lambda 連鎖效應 - 語法、風格與程式庫Java SE 8 的 Lambda 連鎖效應 - 語法、風格與程式庫
Java SE 8 的 Lambda 連鎖效應 - 語法、風格與程式庫
Justin Lin
?
深入淺出 Web 容器 - Tomcat 原始碼分析
深入淺出 Web 容器  - Tomcat 原始碼分析深入淺出 Web 容器  - Tomcat 原始碼分析
深入淺出 Web 容器 - Tomcat 原始碼分析
Justin Lin
?
Servlet & JSP 教學手冊第二版 - 第 7 章:使用 JSTL
Servlet & JSP 教學手冊第二版 - 第 7 章:使用 JSTLServlet & JSP 教學手冊第二版 - 第 7 章:使用 JSTL
Servlet & JSP 教學手冊第二版 - 第 7 章:使用 JSTL
Justin Lin
?
Servlet & JSP 教學手冊第二版 - 第 5 章:Servlet 進階 API、過濾器與傾聽器
Servlet & JSP 教學手冊第二版 - 第 5 章:Servlet 進階 API、過濾器與傾聽器Servlet & JSP 教學手冊第二版 - 第 5 章:Servlet 進階 API、過濾器與傾聽器
Servlet & JSP 教學手冊第二版 - 第 5 章:Servlet 進階 API、過濾器與傾聽器
Justin Lin
?
Java SE 8 技術手冊第 3 章 - 基礎語法
Java SE 8 技術手冊第 3 章 - 基礎語法Java SE 8 技術手冊第 3 章 - 基礎語法
Java SE 8 技術手冊第 3 章 - 基礎語法
Justin Lin
?
Servlet & JSP 教學手冊第二版 - 第 11 章:簡介 JavaMail
Servlet & JSP 教學手冊第二版 - 第 11 章:簡介 JavaMailServlet & JSP 教學手冊第二版 - 第 11 章:簡介 JavaMail
Servlet & JSP 教學手冊第二版 - 第 11 章:簡介 JavaMail
Justin Lin
?
Servlet & JSP 教學手冊第二版 - 第 6 章:使用 JSP
Servlet & JSP 教學手冊第二版 - 第 6 章:使用 JSPServlet & JSP 教學手冊第二版 - 第 6 章:使用 JSP
Servlet & JSP 教學手冊第二版 - 第 6 章:使用 JSP
Justin Lin
?
Servlet & JSP 教學手冊第二版 - 第 9 章:整合資料庫
Servlet & JSP 教學手冊第二版 - 第 9 章:整合資料庫Servlet & JSP 教學手冊第二版 - 第 9 章:整合資料庫
Servlet & JSP 教學手冊第二版 - 第 9 章:整合資料庫
Justin Lin
?
Java SE 7 技術手冊第二章草稿 - 從 JDK 到 IDE
Java SE 7 技術手冊第二章草稿 - 從 JDK 到 IDEJava SE 7 技術手冊第二章草稿 - 從 JDK 到 IDE
Java SE 7 技術手冊第二章草稿 - 從 JDK 到 IDE
Justin Lin
?

Similar to Java SE 7 技術手冊投影片第 05 章 - 物件封装 (20)

物件封装
物件封装物件封装
物件封装
Justin Lin
?
深度學習(Deep learning)概論- 使用 SAS EM 實做
深度學習(Deep learning)概論- 使用 SAS EM 實做深度學習(Deep learning)概論- 使用 SAS EM 實做
深度學習(Deep learning)概論- 使用 SAS EM 實做
SAS TW
?
Chapter 4 models
Chapter 4 modelsChapter 4 models
Chapter 4 models
Ekman Hsieh
?
2, object oriented programming
2, object oriented programming2, object oriented programming
2, object oriented programming
ted-xu
?
CH05:物件封装
CH05:物件封装CH05:物件封装
CH05:物件封装
Justin Lin
?
Model 設定與 Seeding
Model 設定與 SeedingModel 設定與 Seeding
Model 設定與 Seeding
Shengyou Fan
?
从模组到类别
从模组到类别从模组到类别
从模组到类别
Justin Lin
?
美团前端架构介绍
美团前端架构介绍美团前端架构介绍
美团前端架构介绍
pan weizeng
?
闯补惫补蝉肠谤颈辫迟进阶编程
闯补惫补蝉肠谤颈辫迟进阶编程闯补惫补蝉肠谤颈辫迟进阶编程
闯补惫补蝉肠谤颈辫迟进阶编程
iflytek
?
14 Saving Loading and Application States
14 Saving Loading and Application States14 Saving Loading and Application States
14 Saving Loading and Application States
Tom Fan
?
Model 設定與 Seeding
Model 設定與 SeedingModel 設定與 Seeding
Model 設定與 Seeding
Shengyou Fan
?
2016.8.1 Design Pattern Eric
2016.8.1 Design Pattern Eric2016.8.1 Design Pattern Eric
2016.8.1 Design Pattern Eric
柏亨 盧
?
Php study.20130110
Php study.20130110Php study.20130110
Php study.20130110
bngoogle
?
改善笔谤辞驳谤补尘尘别谤生活的蝉辩濒技能
改善笔谤辞驳谤补尘尘别谤生活的蝉辩濒技能改善笔谤辞驳谤补尘尘别谤生活的蝉辩濒技能
改善笔谤辞驳谤补尘尘别谤生活的蝉辩濒技能
Rack Lin
?
Template mb-kao
Template mb-kaoTemplate mb-kao
Template mb-kao
xwcoder
?
Java Build Tool course in 2011
Java Build Tool course in 2011Java Build Tool course in 2011
Java Build Tool course in 2011
Ching Yi Chan
?
Ch13 整合 Spring MVC/Security
Ch13 整合 Spring MVC/SecurityCh13 整合 Spring MVC/Security
Ch13 整合 Spring MVC/Security
Justin Lin
?
模块一-骋辞语言特性.辫诲蹿
模块一-骋辞语言特性.辫诲蹿模块一-骋辞语言特性.辫诲蹿
模块一-骋辞语言特性.辫诲蹿
czzz1
?
Spark tutorial
Spark tutorialSpark tutorial
Spark tutorial
Lin JiaMing
?
合久必分,分久必合
合久必分,分久必合合久必分,分久必合
合久必分,分久必合
Qiangning Hong
?
深度學習(Deep learning)概論- 使用 SAS EM 實做
深度學習(Deep learning)概論- 使用 SAS EM 實做深度學習(Deep learning)概論- 使用 SAS EM 實做
深度學習(Deep learning)概論- 使用 SAS EM 實做
SAS TW
?
2, object oriented programming
2, object oriented programming2, object oriented programming
2, object oriented programming
ted-xu
?
CH05:物件封装
CH05:物件封装CH05:物件封装
CH05:物件封装
Justin Lin
?
Model 設定與 Seeding
Model 設定與 SeedingModel 設定與 Seeding
Model 設定與 Seeding
Shengyou Fan
?
从模组到类别
从模组到类别从模组到类别
从模组到类别
Justin Lin
?
美团前端架构介绍
美团前端架构介绍美团前端架构介绍
美团前端架构介绍
pan weizeng
?
闯补惫补蝉肠谤颈辫迟进阶编程
闯补惫补蝉肠谤颈辫迟进阶编程闯补惫补蝉肠谤颈辫迟进阶编程
闯补惫补蝉肠谤颈辫迟进阶编程
iflytek
?
14 Saving Loading and Application States
14 Saving Loading and Application States14 Saving Loading and Application States
14 Saving Loading and Application States
Tom Fan
?
Model 設定與 Seeding
Model 設定與 SeedingModel 設定與 Seeding
Model 設定與 Seeding
Shengyou Fan
?
2016.8.1 Design Pattern Eric
2016.8.1 Design Pattern Eric2016.8.1 Design Pattern Eric
2016.8.1 Design Pattern Eric
柏亨 盧
?
Php study.20130110
Php study.20130110Php study.20130110
Php study.20130110
bngoogle
?
改善笔谤辞驳谤补尘尘别谤生活的蝉辩濒技能
改善笔谤辞驳谤补尘尘别谤生活的蝉辩濒技能改善笔谤辞驳谤补尘尘别谤生活的蝉辩濒技能
改善笔谤辞驳谤补尘尘别谤生活的蝉辩濒技能
Rack Lin
?
Template mb-kao
Template mb-kaoTemplate mb-kao
Template mb-kao
xwcoder
?
Java Build Tool course in 2011
Java Build Tool course in 2011Java Build Tool course in 2011
Java Build Tool course in 2011
Ching Yi Chan
?
Ch13 整合 Spring MVC/Security
Ch13 整合 Spring MVC/SecurityCh13 整合 Spring MVC/Security
Ch13 整合 Spring MVC/Security
Justin Lin
?
模块一-骋辞语言特性.辫诲蹿
模块一-骋辞语言特性.辫诲蹿模块一-骋辞语言特性.辫诲蹿
模块一-骋辞语言特性.辫诲蹿
czzz1
?
合久必分,分久必合
合久必分,分久必合合久必分,分久必合
合久必分,分久必合
Qiangning Hong
?

More from Justin Lin (20)

Ch14 簡介 Spring Boot
Ch14 簡介 Spring BootCh14 簡介 Spring Boot
Ch14 簡介 Spring Boot
Justin Lin
?
Ch12 Spring 起步走
Ch12 Spring 起步走Ch12 Spring 起步走
Ch12 Spring 起步走
Justin Lin
?
Ch11 簡介 JavaMail
Ch11 簡介 JavaMailCh11 簡介 JavaMail
Ch11 簡介 JavaMail
Justin Lin
?
Ch10 Web 容器安全管理
Ch10 Web 容器安全管理Ch10 Web 容器安全管理
Ch10 Web 容器安全管理
Justin Lin
?
Ch09 整合資料庫
Ch09 整合資料庫Ch09 整合資料庫
Ch09 整合資料庫
Justin Lin
?
Ch07 使用 JSTL
Ch07 使用 JSTLCh07 使用 JSTL
Ch07 使用 JSTL
Justin Lin
?
Ch06 使用 JSP
Ch06 使用 JSPCh06 使用 JSP
Ch06 使用 JSP
Justin Lin
?
Ch05 Servlet 進階 API、過濾器與傾聽器
Ch05 Servlet 進階 API、過濾器與傾聽器Ch05 Servlet 進階 API、過濾器與傾聽器
Ch05 Servlet 進階 API、過濾器與傾聽器
Justin Lin
?
Ch04 會話管理
Ch04 會話管理Ch04 會話管理
Ch04 會話管理
Justin Lin
?
Ch03 請求與回應
Ch03 請求與回應Ch03 請求與回應
Ch03 請求與回應
Justin Lin
?
Ch02 撰寫與設定 Servlet
Ch02 撰寫與設定 ServletCh02 撰寫與設定 Servlet
Ch02 撰寫與設定 Servlet
Justin Lin
?
CH1. 簡介 Web 應用程式
CH1. 簡介 Web 應用程式CH1. 簡介 Web 應用程式
CH1. 簡介 Web 應用程式
Justin Lin
?
14. 进阶主题
14. 进阶主题14. 进阶主题
14. 进阶主题
Justin Lin
?
13.并行、平行与非同步
13.并行、平行与非同步13.并行、平行与非同步
13.并行、平行与非同步
Justin Lin
?
12. 除錯、測試與效能
12. 除錯、測試與效能12. 除錯、測試與效能
12. 除錯、測試與效能
Justin Lin
?
11. 常用內建模組
11. 常用內建模組11. 常用內建模組
11. 常用內建模組
Justin Lin
?
10. 資料永續與交換
10. 資料永續與交換10. 資料永續與交換
10. 資料永續與交換
Justin Lin
?
9. 資料結構
9. 資料結構9. 資料結構
9. 資料結構
Justin Lin
?
8. open() 與 io 模組
8. open() 與 io 模組8. open() 與 io 模組
8. open() 與 io 模組
Justin Lin
?
7. 例外處理
7. 例外處理7. 例外處理
7. 例外處理
Justin Lin
?
Ch14 簡介 Spring Boot
Ch14 簡介 Spring BootCh14 簡介 Spring Boot
Ch14 簡介 Spring Boot
Justin Lin
?
Ch12 Spring 起步走
Ch12 Spring 起步走Ch12 Spring 起步走
Ch12 Spring 起步走
Justin Lin
?
Ch11 簡介 JavaMail
Ch11 簡介 JavaMailCh11 簡介 JavaMail
Ch11 簡介 JavaMail
Justin Lin
?
Ch10 Web 容器安全管理
Ch10 Web 容器安全管理Ch10 Web 容器安全管理
Ch10 Web 容器安全管理
Justin Lin
?
Ch09 整合資料庫
Ch09 整合資料庫Ch09 整合資料庫
Ch09 整合資料庫
Justin Lin
?
Ch05 Servlet 進階 API、過濾器與傾聽器
Ch05 Servlet 進階 API、過濾器與傾聽器Ch05 Servlet 進階 API、過濾器與傾聽器
Ch05 Servlet 進階 API、過濾器與傾聽器
Justin Lin
?
Ch04 會話管理
Ch04 會話管理Ch04 會話管理
Ch04 會話管理
Justin Lin
?
Ch03 請求與回應
Ch03 請求與回應Ch03 請求與回應
Ch03 請求與回應
Justin Lin
?
Ch02 撰寫與設定 Servlet
Ch02 撰寫與設定 ServletCh02 撰寫與設定 Servlet
Ch02 撰寫與設定 Servlet
Justin Lin
?
CH1. 簡介 Web 應用程式
CH1. 簡介 Web 應用程式CH1. 簡介 Web 應用程式
CH1. 簡介 Web 應用程式
Justin Lin
?
13.并行、平行与非同步
13.并行、平行与非同步13.并行、平行与非同步
13.并行、平行与非同步
Justin Lin
?
12. 除錯、測試與效能
12. 除錯、測試與效能12. 除錯、測試與效能
12. 除錯、測試與效能
Justin Lin
?
11. 常用內建模組
11. 常用內建模組11. 常用內建模組
11. 常用內建模組
Justin Lin
?
10. 資料永續與交換
10. 資料永續與交換10. 資料永續與交換
10. 資料永續與交換
Justin Lin
?
8. open() 與 io 模組
8. open() 與 io 模組8. open() 與 io 模組
8. open() 與 io 模組
Justin Lin
?

Java SE 7 技術手冊投影片第 05 章 - 物件封装