抽象類:
java中定義沒有方法體的方法,該方法有由其子類來具體的實現。
該沒有方法體的方法我們稱為抽象方法,含有抽象方法的類為抽象類。
抽象方法的特點:
1.只有方法頭沒有方法體的方法
2.抽象方法用abstract修飾
3.抽象方法代表一種不確定的操作或行為
4.抽象方法不能被呼叫
抽象類的特點:
1.定義中含有抽象方法的類叫抽象類
2.抽象類用abstract修飾
3.抽象類代表一種抽象的物件型別
4.抽象類不能例項化
5.抽象類可以有具體的方法,可以沒有抽象方法
//公司所有員工都有工號,姓名,工資,工作。 //領導除了員工的屬性和方法還有津貼 public class EmployeeDemo { public static void main(String[] args) { // TODO Auto-generated method stub javaTeacher teacher = new javaTeacher(001,"張三",3000); teacher.work(); leader lead = new leader(002,"李四",5000,10000); lead.work(); } } abstract class employee{//抽象類 private int number; private String name; private double salary; public abstract void work();//抽象方法 public employee(int number,String name,double salary) { this.number = number; this.name = name; this.salary = salary; } //抽象類裡不光可以有抽象方法,也可以有具體方法 public void aa(){ System.out.println("aaa"+number+name+salary); } } //一個類繼承抽象類,要麼實現抽象類的方法,要麼繼續抽象下去 class javaTeacher extends employee{ public javaTeacher(int number,String name,double salary) { super(number,name,salary); } //抽象方法的實現 public void work() { System.out.println("上java課"); } } class leader extends employee{ private double allowance;//津貼 public leader(int number,String name,double salary,double allowance) { super(number,name,salary); this.allowance = allowance; } //抽象方法的實現 public void work() { System.out.println("培訓新員工,津貼:"+allowance); } }