舉個例子:
假如很多人要買水果吃,吃的動作只有乙個(用嘴巴吃),
但是有的人要買,可以用現金買,有的人用信用卡,有的人賒帳。
正常方法要為每個人定義乙個類,去定義多個相同的吃的方法,實現不同的支付方式。
但是如果定義乙個抽象類,只需在抽象類裡面實現吃的方法(正常的函式,子類可以繼承),
再做乙個買的抽象方法(即純虛函式)。
那每個人的類都從這個抽象類繼承下來,
只要自己根據情況實現不同買的方法即可,
吃的方法就可以直接繼承父類的方法就可以了。
如果要改吃的方法就不用改多個,只要改這個抽象類裡的就行了。
或者子類想有特殊的吃法,可以過載父類吃這個方法,就可以實現子類自己特殊的吃法。
還有乙個優點:就是在公司裡,可以定義抽象類的名字及方法名,如吃就用eat(),
這樣不同的程式設計師在寫吃這個方法時取相同的名字,大家就可以相互看得懂對方的**了
抽象類的作用
抽象類的乙個功能 不能被例項化。也就是不能被new.舉個生活中的例子 寵物類下面有狗狗類,貓貓類來繼承它。一般的情況我們有這兩種方法 寵物類 a new 狗狗類 翻譯就是。我有乙隻寵物,這只寵物是狗狗,它叫a 狗狗類a new 狗狗類 我有乙隻狗狗,它叫a.這個不區別。關鍵的是,樓主來看下面的 寵物...
抽象類和介面的作用
抽象類 就是乙個類但是它又不是具體的某個事物,比如 交通工具類 介面 跟抽象類差不多但是它不屬於哪個類別,比如 會跑 的 當然這不能叫一類,一般情況下我們對問題的處理可以定義為介面。還有更重要的一點就是類是可以實現多介面的 多型 其實繼承和介面很大的乙個作用就是為了多型啦 如圖 具體 如下 型別一汽...
Java抽象類的作用和使用
當多個類中出現相同功能,但是功能主體不同,這是可以進行向上抽取。這時,只抽取功能定義,而不抽取功能主體。抽象 看不懂。抽象類的特點 1,抽象方法一定在抽象類中。2,抽象方法和抽象類都必須被abstract關鍵字修飾。3,抽象類不可以用new建立和例項化物件。因為抽象類本身就是不完整的。4,抽象類中的...