複製鏈接
請複製以下鏈接發送給好友

虛類

鎖定
含有虛函數的類是虛類,虛函數用關鍵字virtual聲明。
中文名
虛類
類    別
純虛類、虛函數等
訪問權
protected或public
方    法
抽象法

虛類定義

虛函數表明只有在程序使用到該函數時,才獲得與調用對象對應的該函數的實現。

虛類純虛類

含有純虛函數的類是純虛類,更多的是叫抽象類。純虛類可以有成員變量。純虛類不能實例化。

虛類虛函數

虛函數必須是基類的非靜態成員函數,其訪問權限可以是protected或public,在基類的類定義中定義虛函數的一般形式:
virtual 函數返回值類型 虛函數名(形參表)
虛函數的作用是實現動態聯編,也就是在程序的運行階段動態地選擇合適的成員函數。
純虛函數沒有函數體。

虛類相同和不同處

c++虛類相當與java裏面的抽象類,與接口的不同之處如下:
1、一個子類只能繼承一個抽象類(虛類),但能實現多個接口;
2、一個抽象類可以有構造方法,接口沒有構造方法;
3、一個抽象類中的方法不一定是抽象方法,即其中的方法可以有實現(有方法體),接口中的方法都是抽象方法,不能有方法體,只有聲明;
4、一個抽象類可以是public、private、protected、default, 接口只有public和default;
5、一個抽象類中的方法可以是public、private、protected、default, 接口中的方法只能是public。
相同之處:都不能實例化。