java複習二 抽象類和抽象方法的概述

2021-06-20 06:49:44 字數 1029 閱讀 8844

抽象類:抽象類其實跟其他的類相比只是它多了抽象方法而已,那什麼是抽象方法呢?抽象方法就是只宣告但是不用實現的方法,所有的抽象方法都必須用abstract關鍵字來宣告,當然了包含抽象方法的抽象類也必須用abstract class來宣告。

1.抽象類與抽象方法必須用abstract關鍵字來宣告

2.抽象類是不能被直接例項化的,其實也就是不能用new 關鍵字來產生物件。

3.抽象方法只需宣告就可以了。實現就是子類的事了

4.含有抽象方法的類必須宣告為抽象類是必須!!!!!,抽象類的子類必須覆寫所有的抽象方法後才能被例項化,否則這個子類還是個抽象類。

其實抽象方法只是宣告了返回值的資料型別、方法名稱、與所需的引數,但沒有定義方法體。所以子類才必須覆寫掉抽象方法。

在這還要說的一點是:因為final修飾的類不能被繼承,所以final和abstract永遠不能同時使用……不僅如此如果把abstract比喻成乙個小姑娘的話,abstract她媽媽給她頂的規矩就是不能跟final、static、還有private這三個小夥子談戀愛。

static修飾乙個方法時,表明這個方法屬於當前類,就是說這個方法可以通過類來呼叫;如果這個方法被定義成抽象方法的話,那就會導致通過這個類在呼叫這個方法時出現錯誤(呼叫乙個沒有方法體的方法肯定會出錯)所以他倆就不能在一起了…………。

還有就是private了,因為abstract必須被子類重寫才有意義,否則這個方法永遠不會有方法體,所以呢abstract方法就不能定義為private訪問許可權,即這倆也不能在一起。

說了這麼多,那麼抽象類出現的意義到底是什麼呢?抽象類不能建立例項,只能當爹爹來繼承。

從語義上來說呢,就是說抽象類是從n個具體類中找共同點而抽象出來的父類,從多個具有相同特徵的的類中抽象出乙個抽象類,就可以避免下面的子類在設計時的隨意性。

抽象類其實體現的是一種設計模式:模板模式。抽象類作為模板,子類可以在它的基礎上拓展、修改但是還能儲存抽象類的行為方式。

模板模式在物件導向的軟體設計中還是很常用的,原理簡單、實現也很簡單所以我們應該很清楚的知道編寫**一定要有好的規範,這樣才能寫出優秀的**,才能做乙個優秀的程式設計師。

java抽象類和抽象方法

抽象類就是不能使用new方法進行例項化的類,即沒有具體例項物件的類。抽象類有點類似 模板 的作用,目的是根據其格式來建立和修改新的類。物件不能由抽象類直接建立,只可以通過抽象類派生出新的子類,再由其子類來建立物件。當乙個類被宣告為抽象類時,要在這個類前面加上修飾符abstract。在抽象類中的成員方...

java抽象類和抽象方法

抽象類就是不能使用 new方法進行例項化的類,即沒有具體例項物件的類。抽象類有點類似 模板 的作用,目的是根據其格式來建立和修改新的類。物件不能由抽象類直接建立,只可以通過抽象類派生出新的子類,再由其子類來建立物件。當乙個類被宣告為抽象類時,要在這個類前面加上修飾符 abstract 在抽象類中的成...

java抽象類和抽象方法

一.抽象方法定義 使用abstract修飾且沒有方法體的方法,稱為抽象方法.特點 1.使用抽象abstract修飾,方法沒有方法體,留給子類去實現 覆蓋.2.抽象方法修飾符不能是private,final,static修飾,因為抽象方法要留給子類去實現 3.抽象方法必須定義在抽象類或者介面中.二.抽...