java學習中,接口的使用(重要,常用知識點)(java 學習中的小記錄)作者:王可利(Star·星星)
接口(功能:用來添加拓展功能的)
例子:鉛筆、帶橡皮檫的鉛筆。
兩個功能:
1.寫字......> 鉛筆
2.擦字......> 橡皮擦
想法:定義一個鉛筆類,定義一個橡皮擦類,定義一個帶橡皮擦的鉛筆類繼承 鉛筆類和橡皮擦類
但是java是單繼承的。於是就有了解決的方法:接口(可以添加拓展功能)
如:一個鉛筆類,給它添加一個接口給它一個拓展類(橡皮擦類)
接口的定義模式
用 interface 關鍵字來表示接口
結構: interface 接口名{};
如何實現完成接口方法:
結構:
class 類名 implements 接口名1,接口名2,接口名3.....{
}
接口的作用:
1.可以拓展功能
2.可以讓程序解耦
解耦:類 和 接口沒有太大的關聯,不實現這個接口這個類一樣獨立存在,如果這個類不實現這個接口,就完全不需要這些接口。
又好比說:一個 Student 類繼承 Person類,Student 沒有Person 不能獨立存在。
所以 類 和 接口 就是一個解耦的過程,框架會經常用到。
3.可以定於約束
一個項目不止一個人來完成,有很多欄目。如:網易新聞 每天的頭條 都會 有 增 刪 改 查。每個人的方法是不一樣,換一個人維護的話可能方法都變了.所以就需要定於一個大家都一樣的方法來約束。規則就是一樣的了。
接口使用注意事項:
1.接口是一個特殊的類,是可以定義屬性方法的。
2.接口裡面的屬性默認是用final來修飾的。實際是一個常量:public static final int a = 10;
3.接口裡面的方法都是抽象的:abstract public void run(){}
4.接口是沒有構造方法的。也不能創建對象。
5.接口是給類去實現的,非抽象類實現接口時,必須將接口中的方法都實現。
6.一個抽象類實現接口,可以不實現接口中的方法,但是繼承於它的子類必須實現接口中的方法。
7.接口和接口之間是繼承關系,一個接口是可以繼承多個接口的。格式和普通類一樣 用 interface A extends B,C...
1 package study; 2 3 //定義一個擦字的接口 4 interface Easer{ 5 //定義方法 擦字 6 //定義在接口中的方法是不需要實現的,接口中的方法都叫抽象方法 7 public void clear();//默認是用abstract來修飾的方法 8 } 9 interface Pencil{ 10 public void write(); 11 } 12 13 class EraserAndPencil implements Pencil,Easer{ 14 //如果一個類實現了一個接口,那麼這個類裡面必須實現這個接口裡面的所以方法。 15 public void write(){ 16 System.out.println("鉛筆可以寫字"); 17 } 18 //java中是可以實現多個接口的 19 public void clear(){ 20 System.out.println("鉛筆擦可以擦字"); 21 } 22 } 23 24 public class star { 25 public static void main(String[] args) { 26 EraserAndPencil star = new EraserAndPencil(); 27 star.write(); 28 star.clear(); 29 } 30 }