- 資料隱藏
如setter及getter對I/O的validate及filter
而data structure會曝露資料
如同從db來欄位出來用tb['name']
將來欄位修改為name2時,不同引用的地方就都得改
而物件就只需要在組成的地方修改即可 - 抽像化
透過method操作資料public interface Vehicle { double getPercentFuelRemaining(); }
不用知道實作的細節
上例不會從程式裡知道data的細節
user只知道要呼叫的method,不用考慮細節或有何資料
連setter及getter都不用
而data structure曝露資料且無意義的名稱
沒有留言:
張貼留言