es5中繼承的實現:
//es5中的思路是將子類的原型設定成為父類的原型
function super()}
function sub(
)let s = new sub();
sub.prototype = object.create(super.prototype,
})
另外案例:// shape - 父類(superclass)
function shape(
)// 父類的方法move
shape.prototype.move = function(x, y)
;// rectangle - 子類(subclass)
function rectangle(
)// 子類續承父類;子類的prototype指向父類的prototype
rectangle.prototype = object.create(shape.prototype)
;rectangle.prototype.constructor = rectangle;
//例項化子類物件
var rect = new rectangle();
console.log(
'is rect an instance of rectangle?',
rect instanceof rectangle)
; // true
console.log(
'is rect an instance of shape?',
rect instanceof shape)
; // true
rect.move(1, 1)
; // outputs, 'shape moved.'
object.create()方法建立乙個新物件,其作用是使用現有的物件來提供新建立的物件的__proto__,語法:
object.create(proto[, propertiesobject])
es6中直接用class … extends即可
class mydate extends date()}
let mydate = new mydate();
mydate.test(
);
十五)繼承 父輩的遺產
1 多型性是物件導向的核心,而繼承則是實現多型性的基礎。2 由類a產生乙個類b,類b是類a的特殊版本。類a稱為基類,類b稱為派生類,類a是父,類b是子。類b自動包含基類a的所有資料成員和所有函式成員 只是有一些限制條件 即派生類繼承了基類的成員。由類a派生出類b,類b再派生出類c,則a是b的直接基類...
(五)關於Linux的歷史習題整理
1.unix 和 linux之間有什麼關係?linux是一種類unix系統,可以說linux是由unix系統衍生過來的。2.bsd是什麼?我們通常說的freebsd netbsd和bsd又有什麼關係呢?bsd是乙個重要的unix分支,在1977至1995年間由加州大學伯克利分校開發和發布的。free...
AutoMapper官方文件 十五 對映繼承
對映繼承有兩個功能 從基類或介面配置繼承對映配置 執行時多型對映繼承基類配置是opt in,您可以顯式指定要從包含基本型別的配置繼承的對映,也可以在包含includebase的派生型別配置中指定該對映 createmap include formember dest dest.somemember,...