引用:
作者Xforce
你講的是encapsulation 封裝的概念吧
以類別來說
亞里斯多德最早對類別下定義,魚類,鳥類等
而相同類別通常都有共享的"屬性"(property,field),譬如說腳的數目。與共享的"行為"(method,behavior)飛,走,吃飯,說話等。
既然分出的類別 就有類別的仔細程度的劃分,像是自然類的 界門綱目科屬種
人類向下劃分黑人,白人,黃種人等
越往下區分,性質就會越特定,也會越來越詳細的描訴
你可以說黑人是個人類,但是人類不一定是黑人,因為黑人是人類的子類別,所以將黑人視為人類叫up casting,
既然有了類別,屬於這類別的"東西"就叫作物件,譬如說我是個人(物件),我屬於人類(類別)
我有身高,體重的屬性,我會吃飯,說話等行為
|
物件是類別的實體化, 所以一體兩面, 一般寫程式比較搞不清楚的是物件的實際運作, 其實多寫就慢慢可以摸出自己的心得了.
話說, 曾有一說學物件導向最好是一開始就學物件導向, 學過太多程序導向的人會比較痛苦.
關於這點我倒是有不少意見, 因為現在的 IDE 太方便了, RAD 中 click 來 click 去寫程式很方便, 程式撰寫的方式很物件導向, 可是學的新手卻學不到物件的精神, 看過很多XX電腦或是XX會培訓出來的, 寫的程式一眼就看得出來沒什麼技巧可言....
