国产成人毛片视频|星空传媒久草视频|欧美激情草久视频|久久久久女女|久操超碰在线播放|亚洲强奸一区二区|五月天丁香社区在线|色婷婷成人丁香网|午夜欧美6666|纯肉无码91视频

多態(tài)的三種表現(xiàn)形式 什么是多態(tài)?面向?qū)ο蟪绦蛟O(shè)計(jì)為什么要引入多態(tài)的特性?使用多態(tài)有什么優(yōu)點(diǎn)?

什么是多態(tài)?面向?qū)ο蟪绦蛟O(shè)計(jì)為什么要引入多態(tài)的特性?使用多態(tài)有什么優(yōu)點(diǎn)?多態(tài)性是多個(gè)狀態(tài)。例如,有一個(gè)超類,它有兩個(gè)子類,子類1和子類2。超類有一個(gè)方法func(),它由兩個(gè)子類重寫。然后我們可以定義

什么是多態(tài)?面向?qū)ο蟪绦蛟O(shè)計(jì)為什么要引入多態(tài)的特性?使用多態(tài)有什么優(yōu)點(diǎn)?

多態(tài)性是多個(gè)狀態(tài)。

例如,有一個(gè)超類,它有兩個(gè)子類,子類1和子類2。

超類有一個(gè)方法func(),它由兩個(gè)子類重寫。

然后我們可以定義一個(gè)超類引用obj來指向一個(gè)子類對(duì)象,比如超類obj=new subclass 1();然后我們調(diào)用目標(biāo)函數(shù)當(dāng)使用()方法時(shí),它將被動(dòng)態(tài)綁定,即obj其實(shí)際類型的func()方法,即子類1的func()方法。

同樣,您可以編寫超類obj=new subclass 2();目標(biāo)函數(shù)()實(shí)際調(diào)用子類2的func()方法。

由于子類重寫父類的方法,然后指向引用父類的子類對(duì)象,所以調(diào)用方法時(shí)會(huì)進(jìn)行動(dòng)態(tài)綁定,稱為多態(tài)性。

多態(tài)性在程序擴(kuò)展中起著非常重要的作用。例如,如果你想有一個(gè)子類3,你需要改變很多少。如果使用配置文件,則可以保持源代碼不變。

多態(tài)有什么有什么作用?

多態(tài)性包括編譯時(shí)多態(tài)性和運(yùn)行時(shí)多態(tài)性。第一種是通過方法重載;第二種是通過方法覆蓋(覆蓋父方法的子類)。第一種是調(diào)用方法時(shí)不區(qū)分參數(shù)類型,程序會(huì)自動(dòng)執(zhí)行相應(yīng)的方法,比如加法運(yùn)算,可以加int或double,都是相同的方法名。第二種是動(dòng)態(tài)綁定。當(dāng)使用父類引用指向子類對(duì)象,然后調(diào)用父類中的方法時(shí),不同的子類將顯示不同的結(jié)果。這樣的功能具有極好的可擴(kuò)展性。如果你玩過網(wǎng)絡(luò)游戲,你應(yīng)該知道游戲中有不同的角色。它們都有一個(gè)父類。當(dāng)他們做同樣的動(dòng)作時(shí),效果會(huì)不同。例如,跑步、巫師跑步和士兵跑步將不一樣。這是因?yàn)樗鼈兌己w了父類的運(yùn)行方法,并且每個(gè)方法都有自己的實(shí)際情況,表現(xiàn)出多態(tài)性。如果有一天您想添加另一個(gè)角色,只需編寫另一個(gè)類來繼承父類并覆蓋正在運(yùn)行的方法。其他代碼不需要修改,所以可維護(hù)性也很好。這是一個(gè)小程序,也許你沒有意識(shí)到多態(tài)性的強(qiáng)度效應(yīng)。事實(shí)上,當(dāng)談到多態(tài)性時(shí),它是面向接口的編程。它與特定的類無關(guān)。例如,如果不使用多態(tài)性,如果不實(shí)例化對(duì)象,則需要更新它。如果那天你改變了要求怎么辦?是不是又要換了?這是不好的,所以可以使用多態(tài)性來提出那些需要相似的,然后繼承它們。這樣,你需要在將來擴(kuò)展,而你只是繼承。很簡單。我們需要看一下代碼才能更深入地理解它。有一個(gè)問題正在討論中。