多型の実装は、継承と同様の方法を採用することができます。まず、いくつかの仮想メソッドが呼び出される抽象クラスを定義します。仮想メソッドは抽象クラスでは定義されていませんが、具体的な実装クラスを通じて実装されます。
次の例のように:
object.extend = function(destination、source){for(somes in source){destination [property] = source [property]; }宛先を返します。 } //コンストラクター機能base(){}を使用しない抽象的なベースクラスベースを定義します。 base.prototype = {initialize:function(){this.oninit(); //仮想メソッドが呼び出されました}} function subclassa(){// constructor} subclassa.prototype = object.extend({propinsubclassa: "propinsubclassa"、oninit:unert(this.propinsubclassa); }、base.prototype); function subclassb(){// constructor} subclassb.prototype = object.extend({propinsubclassb: "propinsubclassb"、oninit:function(){alert(this.propinsubclassb);}}、base.prototototy); var obja = new subclassa(); obja.initialize(); // output "propinsubclassa" var objb = new subclassb(); objb.initialize(); //出力 "propinsubclassb"まず、抽象的なベースクラスのベースが定義されています。 OnInitメソッドは、基本クラスの初期化メソッドで呼び出されますが、基本クラスはOnInitメソッドの実装または宣言を使用しません。 SubclassaおよびSubclassBクラスは、基本クラスから継承し、OnInitメソッドをさまざまな方法で実装します。