1. 程式人生 > 實用技巧 >Java面向物件之抽象類

Java面向物件之抽象類

java 抽象類

  1. java 抽象類:

    1、abstract 修飾符可以用來修飾方法,也可以修飾類,如果修飾方法,那麼該方法就是抽象方法;如果修飾類,那麼該類就是抽象類

    2、抽象類中可以沒有抽象方法,但是有抽象方法的類一定要宣告為抽象類

    3、抽象類不能使用 new 關鍵字來建立物件,它是用來讓子類繼承的

    4、抽象方法只有方法的宣告,沒有方法的實現,它是用來讓子類實現的

    5、子類繼承抽象類,那麼就必須要實現抽象類沒有實現的抽象方法,否則該子類也要宣告為抽象類

    注意:

    1、不能 new 這個抽象類,只能靠子類去實現它,約束

    2、抽象類中可以寫普通的方法

    3、抽象方法必須在抽象類中

    擴充套件:

    1、抽象的抽象:約束

    2、類:extends 單繼承 介面可以多繼承

  2. 例項:
    package oop.demo12;
    
    /**
     * 抽象類:
     * 1、abstract 修飾符可以用來修飾方法,也可以修飾類,
     * 如果修飾方法,那麼該方法就是抽象方法;
     * 如果修飾類,那麼該類就是抽象類
     * 2、抽象類中可以沒有抽象方法,但是有抽象方法的類一定要宣告為抽象類
     * 3、抽象類不能使用 new 關鍵字來建立物件,它是用來讓子類繼承的
     * 4、抽象方法只有方法的宣告,沒有方法的實現,它是用來讓子類實現的
     * 5、子類繼承抽象類,那麼就必須要實現抽象類沒有實現的抽象方法,否則該子類也要宣告為抽象類
     * 注意:
     * 1、不能 new 這個抽象類,只能靠子類去實現它,約束
     * 2、抽象類中可以寫普通的方法
     * 3、抽象方法必須在抽象類中
     * 擴充套件:
     * 1、抽象的抽象:約束
     * 2、類:extends 單繼承    介面可以多繼承
     
    */ public abstract class Action { /** * 抽象方法 * 只有方法名 * 沒有方法的實現 */ public abstract void doSomething(); }

繼承抽象類

  1. 子類繼承抽象類

    抽象類的所有方法必須要有子類實現

    繼承了它的子類都必須要實現它的方法

    除非該類也是抽象類

  2. 例項:
    package oop.demo12;
    
    /**
     * 抽象類的所有方法必須要有子類實現
     * 繼承了它的子類都必須要實現它的方法
     * 除非該類也是抽象類
     */
    public class A extends
    Action { //繼承抽象類 要重寫抽象類中的方法 @Override public void doSomething() { System.out.println("Override"); } }