この記事では、JavaScript でのオブジェクト指向プログラミングの継承サンプル コードの簡単な実装について説明します。参考のために皆さんと共有してください。詳細は次のとおりです:
オブジェクト指向言語には、次の 4 つの基本特性が必要です。
1. カプセル化機能 (つまり、基本データ型の変数または関数をクラスに入れて、クラスのメンバーまたはメソッドを形成できるようにする)
2. 集約機能 (つまり、十分に複雑な設計を処理できるように、クラスにクラスを含めることができます)
3. 継承のサポート (親クラスはサブクラスを派生でき、サブクラスは親の属性またはメソッドを持ちます)
4. ポリモーフィズムをサポートします (同じメソッド名に、メソッド シグネチャ (関数のパラメーターなど) に応じて独立した処理メソッドを持たせることができます)
JavaScript はこれら 4 つの基本属性をサポートできるため、JavaScript は実際に弱い型指定のオブジェクト指向言語です。次に、簡単なクラス継承コードを示します。
<script type="text/javascript"> //父类ClassA function ClassA(sColor) { this.color = sColor; this.sayColor = function () { document.write("Color:" + this.color + "<br/>"); }; } //子类ClassB,继承自ClassA function ClassB(sColor,sName){ ClassA.call(this,sColor);//利用call函数,将ClassA的所有方法都赋给ClassB,即实现了继承 this.name = sName; this.sayName = function(){ document.write("Name:" + this.name + "<br/>"); } } var oClassA = new ClassA("Red"); oClassA.sayColor(); var oClassB = new ClassB("Blue","Jimmy.Yang"); oClassB.sayColor();//这里sayColor方法是从ClassA继承来的 oClassB.sayName();//这是ClassB中的新方法 /* call函数的演示示例 function sayColor(sPrefix, sSuffix) { alert(sPrefix + this.color + sSuffix); }; var obj = new Object(); sayColor.call(obj, "The color is ", ", a very nice color indeed. "); */ </script>
この記事が JavaScript プログラミングのすべての人に役立つことを願っています。