既然是面向對象,那最重要的概念無非是對象。我們面對的一切事物其實都是對象。對象有它的固有屬性和固有方法,其實對象也就是由一個屬性集合和一個方法集合組成的。這可以結合 java 理解,在 Java 中對象是類的實例,而每個類都定義了一系列的屬性和方法。
然后說到類,這也是一個重要的概念。類,很簡單,是一類對象的集合,它不是一個具體的集合,而是一種抽象描述,而描述方式就是此類對象的共有屬性和方法。換句話說就是共性,很簡單。
面向對象是當今主流的一種程序設計理念和設計規(guī)范,它取代了早期的"結構化"過程設計開發(fā)技術,主張一切皆為對象,程序以人的思維模式去解決問題。面向對像的程序是由類組成的,每個類包含對用戶公開的特定功能部分和隱藏的實現(xiàn)部分。傳統(tǒng)的結構化程序設計通過設計一系列的過程(即算法)來求解問題。這一些過程一旦被確定,就要開始考考慮存儲數(shù)據(jù)的方式,這就明確的表述了程序員的工作方式。但面相對像卻調換了這個順序,它不必關心數(shù)據(jù)對象的具體實現(xiàn),只要能滿足用戶的需求即可。面向對象有三個最基本的特性,即:封裝,繼承,多態(tài)。
封裝(Encapsulation):使用方法把類的數(shù)據(jù)隱藏起來,遵循了java 一切皆為對象的基本概念和核心思想,達成對類的封裝,讓普通類型上升為對象級;封裝控制用戶對類的修改和訪問數(shù)據(jù)的程度,增強了程序的可維護性。
繼承(Implementation):發(fā)生在類和類之間,可分為單繼承和多層繼承描述父子對象之間的血緣關系, 最終達到的目的是:一旦使用了繼承,子類便獲得了父類所有的成員(變量和方法),但是父類的私有的方法和屬性不能被訪問,父類的final成員不能被重寫。 一旦使用了繼承,父類的實例能指向派生類(子類)的引用。
多態(tài)(Multipart):對象在運行期和編譯期具有的兩種狀態(tài),使代碼具有靈活性和重用性。編譯時多態(tài),也就是函數(shù)重載,所謂函數(shù)重載就是指同一個函數(shù)名可以對應多個函數(shù)的實現(xiàn)具體調用哪個按照由參數(shù)個數(shù),參數(shù)類型等來決定。運行時多態(tài):用一個基類的指針或引用來操縱多個派生類型的能力被稱為多態(tài)性。
類和對象的概念是面向對象的基礎,有了這兩者,我們已經(jīng)可以描述整個宇宙,從抽象到具體,從時間到空間的任何事物。面向對象的還有一個概念于是出現(xiàn)了:抽象。如果你覺得前面的概念很簡單的話,接下來可能就難以理解了。
新聞熱點
疑難解答