Maison > Article > interface Web > Javascript implémente simplement la programmation orientée objet et hérite des exemples de compétences code_javascript
Cet article décrit l'implémentation simple d'un exemple de code d'héritage de programmation orientée objet en Javascript. Partagez-le avec tout le monde pour votre référence, les détails sont les suivants :
Les langages orientés objet doivent avoir quatre caractéristiques fondamentales :
1. Capacité d'encapsulation (c'est-à-dire permettre à des variables ou des fonctions de types de données de base d'être placées dans une classe pour former des membres ou des méthodes de la classe)
2. Capacité d'agrégation (c'est-à-dire permettre aux classes de contenir des classes, afin que des conceptions suffisamment complexes puissent être gérées)
3. Prise en charge de l'héritage (la classe parent peut dériver des sous-classes et les sous-classes ont les attributs ou les méthodes des parents)
4. Prise en charge du polymorphisme (permettant au même nom de méthode d'avoir des méthodes de traitement indépendantes en fonction de la signature de la méthode [c'est-à-dire les paramètres de la fonction])
Javascript peut prendre en charge ces quatre attributs de base, donc JavaScript est en effet un langage orienté objet faiblement typé. Voici un code d'héritage de classe simple
.<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>
J'espère que cet article sera utile à tout le monde dans la programmation JavaScript.