天天看點

抽象類。。抽象類abstract

抽象類abstract

  • abstract修飾符可以用來修飾方法也可以修飾類,那麼該方法就是抽象方法:如果修飾類,那麼該類就是抽象類
  • 抽象類中可以沒有抽象方法,但是抽象方法的類一定要聲明為抽象類
  • 抽象類,不能用new關鍵字來建立對象,它是用來讓子類繼承的
  • 抽象方法,隻有方法的聲明,沒有方法的實作,它是用來讓子類實作的
  • 子類繼承抽象類,那麼就必須要實作抽象類沒有實作的抽象方法,否則該子類也要聲明為抽象類

通俗來說就是作為父類來規範子類必許的實作,例如将狗抽象為父類方法,因為不同種類的狗在吃的方面有所不同,是以父類沒有辦法完成具體實作,就用抽象方法來限制子類去實作自己的方法,抽象方法隻能寫在抽象類裡

package com.yuanpei.oop.demo07;
//abstract 抽象類;類 extends : 單繼承    (接口可以多繼承)
public abstract class demo01 {
    //限制 有人幫我們實作
    //abstract: 抽象方法,隻有方法名字,沒有方法的實作!
    public abstract void dog();

}
class A extends demo01{
//抽象類的所有方法,繼承了他的子類,都必須要實作他的方法
    @Override//重寫方法
    public void dog() {

    }
}
/*
1.不能new這個抽象類,隻能靠子類去實作它:限制!
2.抽象類中可以寫普通方法
3.抽象方法可以在抽象類中
* */