好程序員分享Java面試題:面向對象的四個基本特徵

好程序員分享Java面試題:面向對象的四個基本特徵,面向對象技術是目前流行的系統設計開發技術,它包括面向對象分析和麪向對象程序設計。面向對象程序設計技術的提出,主要是爲了解決傳統程序設計方法——結構化程序設計所不能解決的代碼重用問題。程序員

 

  面向對象的編程方法具備四個基本特徵:面試

 

1.抽象:編程

 

  抽象就是忽略一個主題中與當前目標無關的那些方面,以便更充分地注意與當前目標有關的方面。抽象並不打算了解所有問題,而只是選擇其中的一部分,暫時不用部分細節。好比,咱們要設計一個學生成績管理系統,考察學生這個對象時,咱們只關心他的班級、學號、成績等,而不用去關心他的身高、體重這些信息。抽象包括兩個方面,一是過程抽象,二是數據抽象。過程抽象是指任何一個明肯定義功能的操做均可被使用者看做單個的實體看待,儘管這個操做實際上可能由一系列更低級的操做來完成。數據抽象定義了數據類型和施加於該類型對象上的操做,並限定了對象的值只能經過使用這些操做修改和觀察。函數

 

2.繼承:繼承是一種聯結類的層次模型,而且容許和鼓勵類的重用,它提供了一種明確表述共性的方法。對象的一個新類能夠從現有的類中派生,這個過程稱爲類繼承。新類繼承了原始類的特性,新類稱爲原始類的派生類(子類),而原始類稱爲新類的基類(父類)。派生類能夠從它的基類那裏繼承方法和實例變量,而且類能夠修改或增長新的方法使之更適合特殊的須要。這也體現了大天然中通常與特殊的關係。繼承性很好的解決了軟件的可重用性問題。好比說,全部的Windows應用程序都有一個窗口,它們能夠看做都是從一個窗口類派生出來的。可是有的應用程序用於文字處理,有的應用程序用於繪圖,這是因爲派生出了不一樣的子類,各個子類添加了不一樣的特性。設計

 

3.封裝:對象

 

  封裝是面向對象的特徵之一,是對象和類概念的主要特性。封裝是把過程和數據包圍起來,對數據的訪問只能經過已定義的界面。面向對象計算始於這個基本概念,即現實世界能夠被描繪成一系列徹底自治、封裝的對象,這些對象經過一個受保護的接口訪問其餘對象。一旦定義了一個對象的特性,則有必要決定這些特性的可見性,即哪些特性對外部世界是可見的,哪些特性用於表示內部狀態。在這個階段定義對象的接口。一般,應禁止直接訪問一個對象的實際表示,而應經過操做接口訪問對象,這稱爲信息隱藏。事實上,信息隱藏是用戶對封裝性的認識,封裝則爲信息隱藏提供支持。封裝保證了模塊具備較好的獨立性,使得程序維護修改較爲容易。對應用程序的修改僅限於類的內部,於是能夠將應用程序修改帶來的影響減小到最低限度。繼承

 

4.多態性:接口

 

  多態性是指容許不一樣類的對象對同一消息做出響應。好比一樣的加法,把兩個時間加在一塊兒和把兩個整數加在一塊兒確定徹底不一樣。又好比,一樣的選擇編輯-粘貼操做,在字處理程序和繪圖程序中有不一樣的效果。多態性包括參數化多態性和包含多態性。多態性語言具備靈活、抽象、行爲共享、代碼共享的優點,很好的解決了應用程序函數同名問題。開發

 

  面向對象程序設計具備許多優勢:面向對象編程

 

一、開發時間短,效率高,可靠性高,所開發的程序更強壯。因爲面向對象編程的可重用性,能夠在應用程序中大量採用成熟的類庫,從而縮短了開發時間。

 

二、應用程序更易於維護、更新和升級。繼承和封裝使得應用程序的修改帶來的影響更加局部化。

相關文章
相關標籤/搜索