面向對象之接口
阿新 • • 發佈:2018-07-23
strong 設備 class 抽象 oracle 必須 void 重寫 但是
接口概念
接口是功能的集合,同樣可看做是一種數據類型,是比抽象類更為抽象的”類”。
接口的定義
與定義類的class不同,接口定義時需要使用interface關鍵字。
定義接口所在的仍為.java文件,雖然聲明時使用的為interface關鍵字的編譯後仍然會產生.class文件。
這點可以讓我們將接口看做是一種只包含了功能聲明的特殊類。
定義格式:
public interface 接口名 {
抽象方法1;
抽象方法2;
抽象方法3;
}
使用interface代替了原來的class,其他步驟與定義類相同:
l 接口中的方法均為公共訪問的抽象方法
l 接口中無法定義普通的成員變量
類實現接口
類與接口的關系為實現關系,即類實現接口。實現的動作類似繼承,只是關鍵字不同,實現使用implements。
class 類 implements 接口 {
重寫接口中方法
}
接口中成員的特點
1、接口中可以定義變量,但是變量必須有固定的修飾符修飾,public static final 所以接口中的變量也稱之為常量,其值不能改變。
2、接口中可以定義方法,方法也有固定的修飾符,public abstract
3、接口不可以創建對象。
4、子類必須覆蓋掉接口中所有的抽象方法後,子類才可以實例化。否則子類是一個抽象類。
package com.oracle.demo01;
//接口中的所有方法都必須是public abstract
//如果不聲明,那麽默認public abstract
//在接口中所有的成員變量都是常量 默認修飾符:public static final
//static: 類名.成員調用
//final:聲明變量 就是常量
public interface MyInterface {
public static final int a=1;
public abstract void method1();
public int method2();
}
接口的多實現
interface Fu1
{
void show1();
}
interface Fu2
{
void show2();
}
class Zi implements Fu1,Fu2// 多實現。同時實現多個接口。
{
public void show1(){}
public void show2(){}
}
接口的思想
總結:接口在開發中的它好處
1、接口的出現擴展了功能。
2、接口其實就是暴漏出來的規則。
3、接口的出現降低了耦合性,即設備與設備之間實現了解耦。
面向對象之接口