(1)抽象類,被abstract關鍵字修飾的類
(2)抽方法,被abstract關鍵字修飾的方法
2.書寫格式
(1)abstract class 類名{...},表示抽象類
(2)abstract returnType 方法名(參數列表),表示抽象方法
3.使用方法
(1)對象不能由抽象類直接創建,只可以抽象類派生出新的子類,再由子類創建對象
(2)抽象方法只聲明返回的數據類型,方法名稱和所需的參數,沒有方法體,也就是說抽象方法只聲明而不實現,意味着這個方法必須在子類中被重寫
4.作用
(1)當知道一個類的子類將不同的實現某個方法時,把該類聲明爲抽象類很有用,可以共用相同的父類方法,不必再定義
(2)抽象類存在的意義是用來被繼承的。一個類繼承了一個抽象類,必須實現抽象類裏面所有的抽象方法
5.注意事項
(1)抽象類中不一定含有抽象方法,但包含抽象方法的類一定要被聲明爲抽象類
(2)抽象類不能用final關鍵字修飾,即一個類不能既是最終類又是抽象類,因爲抽象類需要重寫。
(3)abstract不能與private,static,final,native並列修飾同一個方法
(4)抽象類中可以包含構造方法,但構造方法不能被聲明爲抽象方法,因爲抽象類不能直接創建對象
6.現在讓我們編寫程序用abstract關鍵字
abstract class People {//定義抽象類
String sex,name;
People(String a,String b) {//定義抽象類的一般方法
sex=a;
name=b;
}
abstract void speak();//定義抽象方法
}
class Student extends People{
String job;
Student(String a,String b,String c) {
super(a,b);
job=c;
}
void speak() {
System.out.println("I'm "+job);
}
}
public class Test {
public static void main(String[] args) {
Student t=new Student("女","李麗","studying");
t.speak();
}
}
執行結果如下: