遺產(chǎn)繼承基礎(chǔ)知識(shí)
法定繼承是依照法律的規(guī)定,由繼承人按繼承順序、繼承份額進(jìn)行繼承。
《繼承法》規(guī)定的法定繼承人是:配偶、子女、父母、兄弟姐妹、祖父母、外祖父母。
繼承順序是指上述繼承人繼承遺產(chǎn)的先后順序?!独^承法》將繼承人分成兩個(gè)繼承順序:
第一順序:配偶、子女、父母;
第二順序:兄弟姐妹、祖父母、外祖父母。
繼承開(kāi)始后,先由第一順序的繼承人繼承,沒(méi)有第一順序繼承人繼承(包括沒(méi)有第一順序繼承人及雖有第一順序繼承人但全部放棄或喪失繼承權(quán)的,才由第二順序繼承人繼承。
繼承份額是指同一順序繼承人繼承遺產(chǎn)時(shí),份額一般均等。對(duì)于有特殊困難的人、未成年人、缺乏勞動(dòng)能力又無(wú)生活來(lái)源的繼承人,應(yīng)該予以照顧,適當(dāng)多分配一些遺產(chǎn)。對(duì)于有撫養(yǎng)能力和撫養(yǎng)條件的繼承人,不盡撫養(yǎng)義務(wù)的,在分配遺產(chǎn)時(shí)應(yīng)當(dāng)不分或少分,。繼承人經(jīng)過(guò)協(xié)商一致,可以平均分配遺產(chǎn),也可以不平均分配遺產(chǎn),這一點(diǎn)在房產(chǎn)的繼承上尤為重要。
"“繼承”(Inheritance)是面向?qū)ο筌浖夹g(shù)當(dāng)中的1個(gè)概念,假如1個(gè)類A繼承自另1個(gè)類B,就把這個(gè)A稱為"B的子類",而把B稱為"A的父類"。
繼承可以使得子類具有父類的各種屬性和方法,而不要再次編寫(xiě)相同的代碼。在令子類繼承父類的同時(shí),可以重新定義某些屬性,并重寫(xiě)某些方法,即覆蓋父類的原有屬性和方法,使其獲得與父類不一樣的功能。
盡管子類包括父類的全部成員,但它不能訪問(wèn)父類中被聲明成private 的成員。 繼承是指1個(gè)對(duì)象直接用另一對(duì)象的屬性和方法。
事實(shí)上,我們遇到的特別多實(shí)體都有繼承的含義。例如,若把汽車看成1個(gè)實(shí)體,它可以分成多個(gè)子實(shí)體,如:卡車、公共汽車等。
這類子實(shí)體都具有汽車的特性,因此,汽車是它們的"父親",而這類子實(shí)體則是汽車的"孩子"。 繼承的目的:實(shí)現(xiàn)代碼重用派生類聲明: class 派生類名:繼承方式 基類名 { 新增成員聲明; };三種繼承方式: 公有繼承 public (原封不動(dòng)) 保護(hù)繼承 protected (折中) 私有繼承 private (化公為私)繼承方式影響子類的訪問(wèn)權(quán)限: 派生類成員對(duì)基類成員的訪問(wèn)權(quán)限 通過(guò)派生類對(duì)象對(duì)基類成員的訪問(wèn)權(quán)限 同類事物具有共同性,在同類事物中,每一個(gè)事物又具有其特殊性。
運(yùn)用抽象的原則舍棄對(duì)象的特殊性,抽取其共同性,則得到1個(gè)適應(yīng)于一批對(duì)象的類,這便是基類(父類),而把具有特殊性的類稱為派生類(子類),派生類的對(duì)象擁有其基類的全部或部分屬性與方法,稱作派生類對(duì)基類的繼承。"。
一個(gè)類最多只允許從一個(gè)類中派生;不允許從兩個(gè)或者更多的類中派生。
在C#中的繼承符合下列規(guī)則:? 繼承是可傳遞的。如果C從B中派生,B又從A中派生,那么C不僅繼承了B中聲明的成員,同樣也繼承了A中的成員。
Object類作為所有類的基類。? 派生類應(yīng)當(dāng)是對(duì)基類的擴(kuò)展。
派生類可以添加新的成員,但不能除去已經(jīng)繼承的成員的定義。? 構(gòu)造函數(shù)和析構(gòu)函數(shù)不能被繼承。
除此以外的其它成員,不論對(duì)它們定義了怎樣的訪問(wèn)方式,都能被繼承?;愔谐蓡T的訪問(wèn)方式只能決定派生類能否訪問(wèn)它們。
派生類如果定義了與繼承而來(lái)的成員同名的新成員,就可以覆蓋已繼承的成員。 但這并不因?yàn)檫@派生類刪除了這些成員,只是不能再訪問(wèn)這些成員。
類可以定義虛方法、虛屬性以及虛索引指示器,它的派生類能夠重載這些成員,從而實(shí)現(xiàn)類可以展示出多態(tài)性。1.覆蓋在類的成員聲明中,可以聲明與繼承而來(lái)的成員同名的成員。
2。多態(tài)(Polymorphism)在面向?qū)ο蟮南到y(tǒng)中,多態(tài)性是一個(gè)非常重要的概念,它允許客戶對(duì)一個(gè)對(duì)象進(jìn)行操作,由對(duì)象來(lái)完一系列的動(dòng)作,具體實(shí)現(xiàn)哪個(gè)動(dòng)作,如何實(shí)現(xiàn)由系統(tǒng)負(fù)責(zé)解釋。
在C#中,多態(tài)性是指同一操作作用于不同的類的實(shí)例,不同的類將進(jìn)行不同的解釋,最后產(chǎn)生不同的執(zhí)行結(jié)果。C#支持兩種類型的多態(tài)性:? 編譯時(shí)的多態(tài)性編譯時(shí)的多態(tài)性是通過(guò)重載來(lái)實(shí)現(xiàn)的。
對(duì)于非虛的成員來(lái)說(shuō),系統(tǒng)在編譯時(shí),根據(jù)傳遞的參數(shù),返回的類型等信息決定實(shí)現(xiàn)何種操作。 ? 運(yùn)行時(shí)的多態(tài)性運(yùn)行時(shí)的多態(tài)性就是指直到系統(tǒng)運(yùn)行時(shí),才根據(jù)實(shí)際情況決定實(shí)現(xiàn)何種操作。
C#中,運(yùn)行時(shí)的多態(tài)性通過(guò)虛成員實(shí)現(xiàn)。編譯時(shí)的多態(tài)提供了運(yùn)行速度快的特點(diǎn),而運(yùn)行時(shí)的多態(tài)性則帶來(lái)了高度靈活和抽象的特點(diǎn)。
給你舉個(gè)例子吧: class B{ protected: ?string strWebSite; public: ?string& getWebSite(){return strWebSite;} ?void setWebSite(string& strValue){strWebSite = strValue;} }; class D: public B{ public: ? ?string& getValue(){ return strWebSite;} ? ?void setValue(string& strValue){ strWebSite = strValue;} } B是父類,擁有一個(gè)protected成員strWebSite;D是子類沒(méi)有定義新的數(shù)據(jù)成員。
如果我們定義一個(gè)D對(duì)象 D d; B& rb = d; D& rd = d; rb。setWebSite("b string"); cout 。
聲明:本網(wǎng)站尊重并保護(hù)知識(shí)產(chǎn)權(quán),根據(jù)《信息網(wǎng)絡(luò)傳播權(quán)保護(hù)條例》,如果我們轉(zhuǎn)載的作品侵犯了您的權(quán)利,請(qǐng)?jiān)谝粋€(gè)月內(nèi)通知我們,我們會(huì)及時(shí)刪除。
蜀ICP備2020033479號(hào)-4 Copyright ? 2016 學(xué)習(xí)鳥(niǎo). 頁(yè)面生成時(shí)間:3.948秒