018用繼承實現多型

2021-10-06 02:55:05 字數 1205 閱讀 3629

多型指的是多個類中具有相似功能的不同方法,並且這些方法使用同名稱,並且這些方法使用相同的呼叫方式來呼叫這些具有不同功能的同名方法。

利用多型性,可以在基類和派生類中使用同樣的方法名定義不同的操作,從而實現「乙個介面,多種方法」。

imports system.math

module module1

public mustinherit class baseclass

public mustoverride function calculate(byval x as double, byval y as double) as double

end class

public class addition

inherits baseclass

public overrides function calculate(byval x as double, byval y as double) as double

return x + y

end function

end class

public class multiply

inherits baseclass

public overrides function calculate(byval x as double, byval y as double) as double

return x * y

end function

end class

'op定義為基類

private sub show(byval op as baseclass, byval num1 as double, byval num2 as double)

dim result as double

result = op.calculate(num1, num2)

console.writeline(result)

end sub

sub main()

'定義為子類

dim oper1 as new addition

dim oper2 as new multiply

'所以多型了

show(oper1, 12, 12)

show(oper2, 12, 12)

console.read()

end sub

end module

JS實現繼承多型

類物件構造模版,無new訪問,類似靜態訪問 var class 模擬抽象方法,可以隨便自己定 show function 模擬繼承extobj擴充套件物件,srcobj源物件 var extend function extobj,srcobj return extobj 動態為object新增ext...

lua實現偽多型繼承

通過lua的設定元表 index欄位,巧妙的運用在無法索引到物件的key時會呼叫 index的機制,實現了偽多型 繼承。如下 inheritance classtotaltable function inheritance class father local classvo classvo.con...

繼承與多型實現方式

具體分為三種情況 1.只繼承介面,派生類必須自己編寫實現 利用純虛函式 2.繼承介面和實現,但允許派生類自己編寫 替換基類實現 利用虛函式 3.繼承介面和實現,不允許派生類修改函式 非虛函式 public 基類public成員與protect成員在派生類中保持原有屬性,private成員仍為基類pr...