abstract定義抽象類
abstract定義抽象方法,只需要聲明,不需要實現
包含抽象方法的類是抽象類
抽象類中可以包含抽象方法,也可以包含普通方法
抽象類不能直接創建,可以定義父類引用變量指向子類的對象
子類繼承抽象類,必須實現父類中的抽象方法
抽象類的應用場景:
1.父類只知道子類應該包含的方法,但是不知道子類如何去實現這些方法,約束子類必須有哪些方法,但是並不關心它如何實現。
2.從多個具有相同特征的類中抽象出一個抽象類,以抽象類作為子類的模板,避免子類設計的隨意性
package com.wangcf; //父類 public abstract class Animal { public abstract void eat(); }
package com.wangcf; //子類 public class Bridge extends Animal{ /** * 這個抽象方法必須實現 */ @Override public void eat() { // TODO Auto-generated method stub System.out.println("子類鳥,愛吃蟲子"); } }
package com.wangcf; //子類 public class Tiger extends Animal{ @Override public void eat() { // TODO Auto-generated method stub System.out.println("子類老虎愛吃肉"); } }
package com.wangcf; //測試類 public class Test { public static void main(String[] args) { Animal animal=new Bridge(); animal.eat(); Animal animal2=new Tiger(); animal2.eat(); } }