物件導向程式設計中的繼承的概念是指,物件導向程式設計中的繼承的概念是什麼?

2021-03-03 21:37:02 字數 5447 閱讀 4889

1樓:匿名使用者

是指:派生自同一個基類的不同類的物件具有一些共同特徵

「繼承」是物件導向軟體技術當中的一個概念。如果一個類a繼承自另一個類b,就把這個a稱為"b的子類",而把b稱為"a的父類"。

繼承可以使得子類具有父類的各種屬性和方法,而不需要再次編寫相同的**。在令子類繼承父類的同時,可以重新定義某些屬性,並重寫某些方法,即覆蓋父類的原有屬性和方法,使其獲得與父類不同的功能。另外,為子類追加新的屬性和方法也是常見的做法。

有些程式語言支援多重繼承,即一個子類可以同時有多個父類,比如c++程式語言;而在有些程式語言中,一個子類只能繼承自一個父類,比如java程式語言,這時可以利用介面來實現與多重繼承相似的效果。

在c++語言中,一個派生類可以從一個基類派生,也可以從多個基類派生。從一個基類派生的繼承稱為單繼承;從多個基類派生的繼承稱為多繼承。

2樓:匿名使用者

繼承 就是繼承父物件的方法屬性!

物件導向程式設計中的「繼承」的概念是什麼?

3樓:匿名使用者

是指:派生自同一個基類的不同類的物件

具有一些共同特徵

「繼承」專是物件導向軟體技屬術當中的一個概念。如果一個類a繼承自另一個類b,就把這個a稱為"b的子類",而把b稱為"a的父類"。

繼承可以使得子類具有父類的各種屬性和方法,而不需要再次編寫相同的**。在令子類繼承父類的同時,可以重新定義某些屬性,並重寫某些方法,即覆蓋父類的原有屬性和方法,使其獲得與父類不同的功能。另外,為子類追加新的屬性和方法也是常見的做法。

有些程式語言支援多重繼承,即一個子類可以同時有多個父類,比如c++程式語言;而在有些程式語言中,一個子類只能繼承自一個父類,比如java程式語言,這時可以利用介面來實現與多重繼承相似的效果。

在c++語言中,一個派生類可以從一個基類派生,也可以從多個基類派生。從一個基類派生的繼承稱為單繼承;從多個基類派生的繼承稱為多繼承。

物件導向概念問題,什麼是封裝、繼承、多型?他們的作用和好處? 求詳細答案高分懸賞

4樓:匿名使用者

封裝:就是物件的屬性和方法打包到一塊

好處:簡單理解就是通用,靈活,獨立;封裝也可以理解為一個模板.

例子:遊戲的職業.

比如法師的血藍和技能.戰士的血藍還有技能.他們都有共同的屬性只不過引數不一樣,封裝就是把職業共同的屬性打包到了一塊

繼承:a類可以擁有b類的屬性和方法,而且b類有自己獨立的屬性和方法(a沒有)

好處:我的理解就是節省**.

例子:作業系統來說xp的版本

xp的專業版就是繼承xp的家庭版(家庭版的功能專業版都有,專業版的功能家庭版沒有).

而且xp專業版再擁有自己獨立的功能

多型:方法的重寫和過載

好處:我的理解就是為了達到目標多了幾條選擇例子:去韓國,可以坐船,可以坐飛機

希望能幫到你

5樓:匿名使用者

封裝,簡單理解就是把一系列的資料放在一個類中,如果形容一個人(假設吧『人』作為一個類),我們可以用身高(hight),體重(weight)等來描述,如果不封裝,我們需要3個變數來形容它。在物件導向中,可以用一個person類封裝這些資料,person具有3個成員變數,分別是 height,weight。使用的時候,每當生成一個這樣的類的物件,就具有這3個屬性。

繼承,如果b類繼承a類。那麼b類將具有a類的所有方法,同時還可以擴充套件自己獨有的方法和屬性。還用人做例子。

『人』是父類,那麼『男人』,『女人』都是繼承自『人』。也就是說,不論『男人』,『女人』,都具有『身高』,『體重』這兩個屬性,同時,他們可以有自己獨有的屬性。比如『男人』可以有一個『妻子』屬性來表示他的妻子是誰。

,而女人可以有『丈夫』屬性。

多型,在java中,同一個方法可以有多種不同的表現形式,具體說來分為過載和重寫。過載就是一個方法的方法名相同而所具有的引數列表不同。比如:

public string talk(string content); //引數是string,

public string talk(string content, int number) //引數是2個,string和int

過載則是子類在繼承父類的同時,重新實現了父類的某個方法。過載的方法名和引數都必須完全相同。

比如父類

public string talk(string content)

子類繼承該類,所以也具有talk這個方法,他重新定義了該方法的實現

public string talk(string content)

6樓:匿名使用者

哎 我當初也有你這衝動。。說到底物件導向是一種世界觀。人類的思考目標就是物件,程式設計時以這種觀點來組織程式就是物件導向程式設計。

我個人理解,話說你想一步到位就有點不太現實。只能慢慢體會。封裝指類對外遮蔽內部細節。

繼承是指類之間有繼承關係,子類有條件地繼承父類的特徵。多型說通俗一點就是以一種更泛化、更通用的觀點或者視角去對待一個具體物件。我只理解到這個程度。

貌似直到現在都沒有一個公認的、權威的定義,初學階段琢磨這些有點兒鑽牛角尖了。建議你直接上手程式設計。路還長,童鞋。。

7樓:匿名使用者

繼承是一種聯結類的層次模型,並且允許和鼓勵類的重用,它提供了一種明確描述共性的方法,物件的一個新類可以從現有的類中的派出,這個過程稱為類繼承。新類繼承了原始類的特性,新類稱為原始類的派生類(子類),而原始類稱為新類的基類(父類)。派生類可以從它的基類那裡繼承方法和例項變數,並且類可以修改或增加新的方法使之更適合特殊的需要。

封裝:封裝是把過程和資料包圍起來,對資料的訪問只能通過已定義的介面。

物件導向計算始於這個基本概念,即現實世界可以被描繪成一系列完全自治、封裝的物件,這些物件通過一個受保護的介面訪問其他物件。

多型性:多型性是指允許不同類的物件對同一訊息作出響應。多型性包括引數化多型性和包含多型性。多型性語言具有靈活、抽象、行為共享、**共享的優勢,很好的解決了應用程式函式同名問題。

8樓:匿名使用者

直接 上手程式設計吧

只要對這些東西有個模糊的概念就可以了,再說 這些概念性的東西沒有標準的答案的。

面試問到這些問題 簡單說下 然後直接說 這些概念性的東西 不太瞭解 就可以了 。

別人只在乎你 做過什麼專案 關鍵是 技術 ,能力。

9樓:匿名使用者

封裝體現在公有、私有、受保護。。。。

繼承體現在類的繼承。。。就是可以免去重複定義吧。。。

多型體現在虛擬函式、動態聯編。。。。

10樓:匿名使用者

問題不難,但是可能要和你講上三天

物件導向程式中,繼承,「可見性」是什麼意思?

11樓:拍拍屁股算了

子類繼承父類中的屬性和方法,可見性,就是父類屬性被覆蓋後是否可見。應該是這樣把,好久沒看了

java裡面的物件導向程式設計有關於封裝繼承通俗講是什麼意思

12樓:匿名使用者

封裝會對類的成員變數加上絕對領域,因此沒有人能夠惡搞你的變數。

比如一個類:dog

class dog

當然我們可以指定這隻狗的高度: new dog().height = 34;

但是絕對不應該:new dog().height = 0; 因為狗的高度能是0麼?

剛出生也不能是0啊!但是這個錯誤是有可能發生的,因為這個成員變數height可以任意的被修改和訪問。

所以,封裝的基本原則:

將你的成員變數標記為私有的,並提供公有的get和set方法來控制存取動作。

class dog

public void setheight(int h) }}

這回明白了吧?但是有的時候你會發現,好多情況,我們確實把屬性設定為私有的,而且也提供set和get方法,但是方法內部什麼都沒做,只是簡單的賦值或者返回屬性值,這不是和以前一樣也可以任意更改了麼?,這裡告訴你為什麼,這種方式已經形成了一種規範,可能這樣做暫時看似沒什麼用,但是是一個標準規範,應該這樣去做,因為此時可能我們不想去做些什麼,但是以後呢?

以後想做直接在方法內部新增判斷即可,這時候其他呼叫了此方法的地方並不需要改變,維護性比較好。

也就是說,除非你是刻意的想讓外界直接可以任意訪問,否則,我們要儘可能的將屬性設定為private私有的,對於方法也是一樣,有些方法就是我這個類自己內部呼叫,內部有用,那我就設為private的,這個具體得根據實際情況分析設計,好處除了上面所述,還有就是 你對外只提供有效的屬性或方法,其他的進行隱藏,那麼之後,誰使用你這個類,誰調屬性或者方法的時候後都會明確的知道,這些對我都是有用的。

當然訪問許可權修飾詞,private,預設的,protected,public 四種,具體用那一種進行修飾,根據實際情況自己看。

封裝的目的是增強安全性和簡化程式設計,增強安全性上面說過了,簡化程式設計也就是說,使用者不必瞭解具體的實現細節,而只是使用 外部介面(方法名和引數列表)就可以了。

再說繼承:

繼承是類與類之間的關係,class cat extends animal 意思就是說貓從動物繼承,那麼動物被叫做父類,貓被叫做子類,貓類和動物類,這兩個類之間的關係是繼承關係。

有了繼承關係之後,作用之一 就是**重用,子類從父類繼承,那麼父類的所有內容(屬性和方法),子類無需再次定義就都擁有了,全部都擁有了,但是有些內容比如說 private的屬性,擁有是擁有了,但是不能使用,說白了就是有擁有權,沒有使用權。

另外一個作用就是繼承以後,可以父類引用指向子類物件,也就是向上轉型(upcasting),比如:

animal a = new dog();

繼承了以後,還可以對父類的方法進行重寫(override)。

最重要的一點就是:繼承,重寫,向上轉型,是多型的3個必要的條件,缺一不可。

物件導向的三個特性:封裝、繼承、多型,多型從另外一個角度,劃分開了介面和實現,使我們程式的可擴充套件性達到了極致,現在明白了吧?之所以現代程式語言都採用物件導向的思想,原因就是這樣的程式,**的重用性,程式的可擴充套件性,後期的可維護性,以及其他其他的什麼什麼性 都是非常好的。

我也就理解這麼多,寫了一個小時,以上絕非複製貼上,可能我說的也不全面,畢竟就理解到這,自己再看看書吧。

13樓:匿名使用者

封裝的概念好比一輛汽車,你學開車的時候只需學會諸如踩油門、剎車,轉方向盤即可,無需去了解它的發動機是如何發動。

繼承,先說說我對類的理解,類起到的作用有:分類(你所用某個類建立的物件實際上該類的個案)和模板的作用,那麼繼承則起到了對類再次分類的作用,比如,有個類「動物」,「哺乳動物」繼承「動物」,再往下「馬」又繼承了「哺乳動物」這個類。在這裡,我們從下往上講,首先,我們把某種東西劃分出來,叫做「馬」(當然還有「牛」,「魚」等等),接著,我們發現,「馬」,「羊」等還有很多共同的特點,於是,我們再次劃分出了「哺乳動物」這個類,再次分類,我們則有了「動物」。

但在實際開發中,我們一般是從上往下定義的,即先有了「動物」,再有「哺乳動物」,最後有「馬」。

物件導向概念問題什麼是封裝繼承多型?他們

哎 我當初也有你這衝動。說到底物件導向是一種世界觀。人類的思考目標就是物件,程式設計時以這種觀點來組織程式就是物件導向程式設計。我個人理解,話說你想一步到位就有點不太現實。只能慢慢體會。封裝指類對外遮蔽內部細節。繼承是指類之間有繼承關係,子類有條件地繼承父類的特徵。多型說通俗一點就是以一種更泛化 更...

java是物件導向的程式設計語言嗎

java肯定是面向對向的,c語言就是程序導向的 必須的啊,是完全的物件導向。必須是啊,很經典的物件導向的程式設計語言。必須是啊,java程式設計思想有句話是一切都是物件 是,java程式設計師是一個nb的存在,他可以在一切事物都是物件的世界中沒有物件的活著 java物件導向程式設計是什麼意思 這是一...

物件導向程式的特點是什麼?物件導向程式設計和麵向過程程式設計有什麼區別?請回答簡潔一些

物件導向程式的特點 封裝 繼承 多型 這2個都是軟體程式設計的思想,主要區別就在代回碼的重複利用上,答因為物件導向的三大特性使得物件導向的 利用率更高了。ps 不同的人理解不一樣,我的一個前輩說 都是約定俗成的那樣寫,搞程式的人不一定都能理解什麼是oo的特性,但都能寫的出來.三大特點是繼承性 封裝性...