java面向对象中的抽象,类与对象
一、抽象
什么是抽象?將鴿子和麻雀看做是鳥,這是抽象;將整個空調的行為用遙控代替,遙控就可以看做是空調的抽象;將外貌,種族,語言等等形形色色不同的個體看做是人這樣一個概念,這也是抽象。
在編程語言中,從最早的機器語言到匯編語言再到高級語言,就是靠一層一層抽象來實現的。比如匯編語言把“遙控器”給了高級語言,這樣高級語言就能簡便使用一些已經集成在遙控器中的匯編語言指令,通過這些指令,形成更加符合人們編程習慣的語言,比如java。
在面向對象中,抽象更加類似于集合的概念,同一個集合里的元素擁有共同的特征,可以完成同樣的行為動作。而且同一個集合中的不同的元素也有各自不同的特點,比如2,3是素數,而4不是。面向對象編程語言將世間萬事萬物按照各自的特點,抽象成不同的“類”,而“類”對應于現實存在的事物則被稱為“對象”。很容易看出來“類”是“對象”的抽象。
二、類與對象
類是具有同樣行為和屬性的對象的集合,是一個抽象的概念,并不實際存在。類的行為可以看做是提供給外界的接口(只有部分),類的屬性是類所具有特定的性質。
對象是類的現實表示,存在于實際生活中。一個類可以生成多個對象,每個對象的屬性可以不同,行為必須公有。同時,每個對象可以擁有自己獨特的部分,比如鳥中鴕鳥不會飛翔。
三、面向對象與面向過程
都是解決問題的方式。
面向過程是將問題單獨提出,一步一步,按照邏輯上的順序解決。面向對象的編程方法并不拘泥于問題的本質步驟,而是將問題按照功能抽象出來,分解成一個一個類與對象之間的協調工作。以下五子棋為例,面向過程是完整記錄每一步的動作,而面向對象則是將五子棋抽象出來為一個五子棋類,一個棋盤類和一個規則類,五子棋所在的位置和顏色是屬性,每一次的動作都是五子棋類的一個對象,僅僅是對象位置和顏色不同。使用面向對象的編程方法,可以是編程中的邏輯更加清晰,代碼可讀性高,也便于管理大型項目,抽象出來的類也可以重復使用。
?
?
轉載于:https://www.cnblogs.com/xiaowk/p/10370047.html
總結
以上是生活随笔為你收集整理的java面向对象中的抽象,类与对象的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: CSS3 Filter详解(改变模糊度
- 下一篇: 『Balancing Act 树的重心』