繼承的多種方式

2021-09-27 08:16:23 字數 1679 閱讀 3213

常用的繼承方法:

1.原生繼承

/ 抽取共同點

/* 人類 */

function

people

(name, age, ***)

people.prototype.

say=

function()

people.prototype.

breath

=function()

/* 學生類 */

function

student

(name, age, ***, studentno)

// student既然繼承了people除了要有people的屬性之外 還要有people的方法

// 將student的原型指向people的例項 叫做原型式繼承

student.prototype =

newpeople()

;// 因為丟了原來的原型 所以constructor屬性也就丟失了需要補回

// 補回操作與增加新方法的操作 一定要在繼承完畢之後再執行

student.prototype.constructor = student;

student.prototype.

study

=function()

/* 老師類 */

function

teacher

(name, age, ***, jiaobian)

teacher.prototype =

newpeople()

;// delete teacher.prototype.name;

// delete teacher.prototype.age;

// delete teacher.prototype.***;

teacher.prototype.constructor = teacher;

teacher.prototype.

teach

=function()

2.寄生式
// 想要讓學生類的例項擁有people類的方法 

// var f = function()

// f.prototype = people.prototype;

// var f = new f();

3.構造式:建構函式式繼承 它是專門用於繼承屬性的
people.

call

(this

, name, age, ***)

;

4.es6中的繼承

// es6中的定義類

class

people

// 方法定義在這裡

breath()

}// es6中的繼承

class

student

extends

people

}// 初始化例項

var s =

newstudent

("小白",15

,"男"

,123);

<

/script>

C 的多種繼承方式

繼承的意義在於 可以復用,在原有的基礎上新增新功能就變成了新一代產品了 就像移動 發展史一樣,從大哥大到現在的智慧型手機,代代相傳添磚加瓦,單車變摩托,平房變別墅。究其本質是不變的 繼承也是為了多型服務的。class的繼承分為單繼承,多繼承,菱形繼承,虛擬繼承,菱形虛擬繼承。單繼承 單繼承就是子類d...

JavaScript繼承的多種方式

1.原型鏈繼承 function a firstname a.prototype.getfirstname function function b lastname b.prototype newa 遠 b.prototype.getlastname function var person newb...

Class多種繼承方式

class 的多種繼承方式 繼承1 原型鏈繼承 子類的prototype為父類的例項 function person person.prototype.printname function function student student.prototype newperson student.pr...