C中的抽象類問題

2021-03-10 19:19:34 字數 756 閱讀 9527

1樓:匿名使用者

例如public abstract class person}張三類 派生與person

class 張三 :person

}也就是說抽象類裡可以有eat那樣的抽象方法(成員),需派生類去實現。也可以有像sleep那樣的已經實現了的方法(成員)。

介面與抽象類有類似的地方,建議也一起看看。介面的話 裡面只能是定義的方法,不能實現。由派生類去實現。

2樓:匿名使用者

abstract 修飾符用於表示所修飾的類是不完整的,並且它只能用作回基類。抽象答類與非抽象類在以下方面是不同的:

抽象類不能直接例項化,並且對抽象類使用 new 運算子是編譯時錯誤。雖然一些變數和值在編譯時的型別可以是抽象的,但是這樣的變數和值必須或者為 null,或者含有對非抽象類的例項的引用(此非抽象類是從抽象類派生的)。

允許(但不要求)抽象類包含抽象成員。

抽象類不能被密封。

當從抽象類派生非抽象類時,這些非抽象類必須具體實現所繼承的所有抽象成員,從而重寫那些抽象成員

3樓:匿名使用者

抽象類來一般作為基類

比如abstract class tooltool是抽象類,下面自有個抽象方法,定義了引數,但是沒有寫實體,就是方法的內容

這個方法可以被這個抽象類的派生類呼叫,重寫比如class toolobject : tool}因為基類中的這個onmousedown方法,要在多給類中用到,所以用了抽象類,避免**雜亂,冗餘

凡是包含純虛擬函式的類都是抽象類,C 問題 只要有一個純虛擬函式的類叫做 抽象類 或者 基類 對嗎?

個人覺bai得是對的,包含純du 虛擬函式的類就是一個抽 象類zhi,抽象類不能 dao被例項化,而純虛函專數也不能在抽象類中屬被定義,只能由子類實現,所以無法呼叫。類可以包含純虛擬函式和其他函式,但只有要一個純虛擬函式的存在,這個類就被認為是抽象類,因此抽象類的定義與他的內容並不衝突。這個是 有 ...

15 關於介面 抽象類和普通類,下列說法錯誤的是

b,抽象類的方法不能實現,而不是部分實現。d介面可以定義變數,而且預設都是public static final.下列選項中,關於j a的抽象方法和抽象類說法錯誤的是 答案 c 但不可以全部方法都是抽象方法 這個說法錯誤的 在c 中,下列關於抽象類和介面的說法,正確的是 選擇一項 沒有一個是正確的 ...

什麼是介面?介面的作用是什麼?它與抽象類有什麼區別

介面算是一種規範,一種契約。規定了實現該介面的類必須有介面方法的實現。可以把他理解為沒有資料成員的,所有方法均實現的抽象類 介面是定義的一個標準,只要符合介面標準的類,就可以用共同的命令去操作。比如定義了一個6mm的螺絲帽,只要符合6mm螺絲帽的特點,就可以和其它部件接合,而不管這個螺絲帽是怎麼做的...