Java抽象類的概念講解
簡單來說
抽象類通常用來作為一個類族的最頂端的父類,用最底層的類表示現(xiàn)實中的具體事物,用最頂層的類表示該類族所有事物的共性。用abstract關(guān)鍵字類修飾一個類,該類叫做抽象類。
有抽象類那么肯定也有抽象方法,什么是抽象方法呢?
抽象方法就是有名字,形參列表,返回值,沒有方法體的方法就做抽象方法。
抽象方法和抽象類的關(guān)系?
凡是沒有方法體的方法必須使用關(guān)鍵字abstract修飾為抽象方法。
凡是含有抽象方法的類必須聲明為抽象類。
abstract class A{
abstract public void f();//有抽象方法的一定是抽象類
}
abstract class B{
public void f(){
//抽象類不一定有抽象方法
}
}
我們從舉例中可以看出A類方法中沒有方法體,因此使用了關(guān)鍵字abstract并且A類也必須聲明為抽象類。
抽象類中的多態(tài):
abstract class a{
abstract public void f();
}
class B extends A{
public void f(){
System.out.println("BBB");
}
}
public class text{
public static void main(String[] args){
A aa=new A();//錯誤,抽象類不能實例化
B bb=new B();//ok
bb.f()//OK
A aa;//抽象類可以定義一個抽象類的引用,但是不可以定義一個抽象類對象。
aa=bb;//利用抽象類的引用指向真正實現(xiàn)的子類,再利用多態(tài)調(diào)用其子類方法。
aa.f();
}
}
總結(jié)
以上就是這篇文章的全部內(nèi)容了,希望本文的內(nèi)容對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,謝謝大家對腳本之家的支持。如果你想了解更多相關(guān)內(nèi)容請查看下面相關(guān)鏈接
相關(guān)文章
Java集合框架之Stack Queue Deque使用詳解刨析
早在 Java 2 中之前,Java 就提供了特設(shè)類。比如:Dictionary, Vector, Stack, 和 Properties 這些類用來存儲和操作對象組。雖然這些類都非常有用,但是它們?nèi)鄙僖粋€核心的,統(tǒng)一的主題。由于這個原因,使用 Vector 類的方式和使用 Properties 類的方式有著很大不同2021-10-10
Spring Boot Admin微服務(wù)應(yīng)用監(jiān)控的實現(xiàn)
這篇文章主要介紹了Spring Boot Admin微服務(wù)應(yīng)用監(jiān)控,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2019-10-10
Java使用Scanner類進行控制臺輸入實現(xiàn)方法
這篇文章主要介紹了Java使用Scanner類進行控制臺輸入實現(xiàn)方法,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2019-12-12
利用Spring boot如何創(chuàng)建簡單的web交互應(yīng)用
這篇文章主要介紹了利用Spring boot如何創(chuàng)建簡單的web交互應(yīng)用的相關(guān)資料,文中通過示例代碼介紹的非常詳細,對大家具有一定的參考價值,需要的朋友們下面來一起看看吧。2017-04-04
java實現(xiàn)批量下載 多文件打包成zip格式下載
這篇文章主要為大家詳細介紹了java實現(xiàn)批量下載、將多文件打包成zip格式下載,具有一定的參考價值,感興趣的小伙伴們可以參考一下2019-07-07

