Java中的抽象類


抽象類定義
1、語法定義:
抽象類錢使用abstract關鍵字修飾,則該類為抽象類。
2、應用場景:
a、在某些情況下,某個父類只是知道其子類應該包含怎樣的方法,但無法准確知道這些子類如何實現這些方法
(抽象類約束子類必須有哪些方法,但並不關注子類怎么去實現這些方法。)
b、從多個具有相同特征的類中抽象出一個抽象類,以這個抽象類作為子類的模板,從而避免了子類設計的隨意性。
3、作用:
限制規定子類必須實現某些方法,但不關注實現細節。
4、使用規則:
a、abstract定義抽象類
b、abstract定義抽象方法,只有聲明,不需要實現
c、包含抽象方法的類是抽象類
d、抽象類中可以包含普通的方法,也可以沒有抽象方法
e、抽象類不能直接創建,可以定義引用變量

(注:抽象方法沒有方法體,以分號結束。)

1 package com.imooc;
2 
3 public abstract class Telphone {
4     public abstract void call();
5     public abstract void message();
6 }
 1 package com.imooc;
 2 
 3 public class CellPhone extends Telphone {
 4 
 5     @Override
 6     public void call() {
 7         // TODO Auto-generated method stub
 8         System.out.println("通過鍵盤打電話");
 9     }
10 
11     @Override
12     public void message() {
13         // TODO Auto-generated method stub
14         System.out.println("通過鍵盤發短信");
15 
16     }
17 
18 }
 1 package com.imooc;
 2 
 3 public class SmartPhone extends Telphone {
 4 
 5     @Override
 6     public void call() {
 7         // TODO Auto-generated method stub
 8         System.out.println("通過語音打電話");
 9     }
10 
11     @Override
12     public void message() {
13         // TODO Auto-generated method stub
14         System.out.println("通過語音發短信");
15     }
16 
17 }
 1 package com.imooc;
 2 
 3 public class Initial {
 4 
 5     public static void main(String[] args) {
 6         // TODO Auto-generated method stub
 7         Telphone tel1 = new CellPhone();
 8         tel1.call();
 9         tel1.message();
10         Telphone tel2 = new SmartPhone();
11         tel2.call();
12         tel2.message();
13     }
14 
15 }

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM