常用的繼承方法:
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...