初識JS中的「類」

2021-09-26 14:13:14 字數 1102 閱讀 4380

多型:

多型指的是任何方法都可以引用,繼承層次中高層的方法(即子類可以引用,繼承父類身上的方法),其中,方法的多型性取決於你是在哪個類的例項中引用它。

下面是一段偽**:

class vehicle 

drive()

}class car inherits vehicle

}class speedboat inherits vehicle

pilot()

}

問題:最後乙個子類中的pilot() 方法繼承的這個方法drive()需要呼叫乙個方法ignition() ,而這個方法在父類vehicle和子類speedboat中都有,用的是哪乙個呢?

答:如果在這個speedboat子類的例項中呼叫,那麼使用的就是這個子類中的 ignition() 方法,如果直接例項化那個父類,那麼使用的就是父類中的 ignition() 方法 。這裡的呼叫邏輯類似於原型鏈,需要先在自身上找有沒有這個方法,如果沒有的話就到父類上找。

super

在子類(而不是它們建立的例項物件!)中,子類也可以相對引用它繼承的父類,這種相對引用通常被稱為 super。

圖中的foo代表父類,bar代表子類,而旁邊是它們的例項,在bar類中可以通過(super)訪問父類中的方法,注意:子類得到的僅僅是繼承自父類行為的乙份副本,在子類中重寫的方法並不會影響父類中原有的方法(類的繼承其實就是複製)。

在js中的實現方法:

這裡書的作者稱其為混入:

function mixin( sourceobj, targetobj ) 

}return targetobj; }

var vehicle = ,

drive: function() };

var car = mixin(

vehicle, } );

這種複製方法複製的是引用型別的引用和基本型別的值,所以其實 ignition 屬性兩個物件呼叫的是記憶體中的同乙個函式。

下次學習過程中有機會再更新。

JS中的函式初識

首先我們要了解函式是單執行緒的。函式分為兩部分 建立函式和執行函式。並且每一次執行函式都有執行結果。函式是指一段在一起的可以做某一件事兒的程式,也叫作子程式 oop 中的方法。其實我們就可以認為函式是實現某一功能的方法。接下來我們先從建立函式說起吧。建立函式 函式分為函式名和函式體 首先會在當前作用...

初識python中的類與物件

在生活中,我們走在路邊,看到一輛車,大腦中首先想到的是 這是一輛車,然後才是這是一輛什麼牌子的車 在這裡,我們就用到了程式設計中的類的概念。同樣的,看到一條小狗,也會先想到這是一條狗,然後會想到這是一條什麼品種的狗。在程式設計中,把同一類的事物叫做類,把這個類裡所共有的特徵總結歸納並定義出來,就是類...

初識c 的類

前言 c 所做的最重要的改進就是提供了類。類就體現了c 物件導向程式設計 oop 的特性,類是一種將抽象轉換為使用者定義型別的c 工具,它將資料表示和操縱資料的方法組合成乙個整潔的包。類的組成部分 類中的訪問許可權的總結 如何定義和宣告乙個類 include using namespace std ...