程式語言的特性本質(三)從消弭重複性看封裝、繼承、多型

程式設計在某種程度上都是在消弭重複性,以提高程式可維護性來控制軟體複雜度。若從消弭重複性來瞭解物件導向中封裝、繼承、多型,就可具體瞭解這些基本原則的作用。 


封裝消弭了物件的重複行為 
假設你用類別基礎的Java設計僅具有name與balance的Account類別,而同事拿來建立多個物件,像是建立acct1、並為acct1.name與acct1.balance指定值,建立acct2並為acct2.name與acct2.balance指定值…… 


Account acct1 = new Account(); 
acct1.name = "Justin"; 
acct1.balance = 200; // 請自行想像以上流程重複多次 


你立刻發現,同事建立物件後,都作了重複初始流程。對程式設計者而言,「重複」並不是美德。例如同事若初始10個物件,假以時日,若初始流程更改了,他就必須修改10個地方,毫無可維護性可言。你觀察同事初始物件的流程,在Account類別定義建構式,將初始流程予以「封裝」: 


Account(String name, double balance) { 
    this.name = name;
    this.balance = balance; 



http://www.ithome.com.tw/itadm/article.php?c=73584更多內容:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值