抽象類和抽象方法的特點


1 一個抽象類里可以沒有抽象方法,但含有抽象方法的類必定為抽象類;
2 抽象類不能被實例化為對象,而只能作為其它類的超類,並且必須被繼承;
3 若某子類繼承自一個抽象類,而該子類不是抽象類,則子類需用覆蓋的方式來實例化超類中的所有抽象類方法。
抽象方法可再與public、protect復合使用,但不能與final、private和static復合使用;
4 抽象方法只有方法聲明,不能有方法體。

 1.抽象方法:

 使用abstract修飾,的方法,沒有方法體,只有聲明。定義的是一種“規范”,就是告訴子類必須要給抽象方法提供具體的實現

 2.抽象類:

 包含抽象方法的類就是抽象類。通過abstract定義規范,然后要求子類必須定義具體實現,通過抽象類,我們就可以,嚴格限制子類的設計,使的子類之間更加通用

3.基本用法:

public abstract class _01_Abstract{
    
    //1.沒有實現   
    //2.子類必須實現

    abstract public void shout();
    public void run(){
        System.out.println("4565482  454");
    }
}

 class Dog extends _01_Abstract{

    @Override
    //父類中有shout方法,所以限制子類必須有,至於方法體中有什么與父類無關
    public void shout() {
        
        // TODO Auto-generated method stub
        System.out.println("___++++++___");
        
    }
 
 }

 4.使用要點:

1 在抽象方法的類只能定義成抽象類;
2 抽象類不能實例化,即不能用new來實例化對象;
3 抽象類可以以包含屬性、方法、構造方法。但是構造方法不能用來new實例,只能被子類調用;
4 抽象類只能用來被繼承;
5 抽象方法必須被子類實現。

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM