interface关键字
生活随笔
收集整理的這篇文章主要介紹了
interface关键字
小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
接口的使用
1.接口使用interface來定義
2.Java中,接口和類是并列的兩個(gè)結(jié)構(gòu)
3.如何定義接口:定義接口中的成員3.1 JDK7及以前:只能定義全局常量和抽象方法>全局常量:public static final的.但是書寫時(shí),可以省略不寫>抽象方法:public abstract的3.2 JDK8:除了定義全局常量和抽象方法之外,還可以定義靜態(tài)方法、默認(rèn)方法(略)
4. 接口中不能定義構(gòu)造器的!意味著接口不可以實(shí)例化
5. Java開發(fā)中,接口通過讓類去實(shí)現(xiàn)(implements)的方式來使用.如果實(shí)現(xiàn)類覆蓋了接口中的所有抽象方法,則此實(shí)現(xiàn)類就可以實(shí)例化如果實(shí)現(xiàn)類沒有覆蓋接口中所有的抽象方法,則此實(shí)現(xiàn)類仍為一個(gè)抽象類
6. Java類可以實(shí)現(xiàn)多個(gè)接口 --->彌補(bǔ)了Java單繼承性的局限性格式:class AA extends BB implements CC,DD,EE
7. 接口與接口之間可以繼承,而且可以多繼承
*******************************
8. 接口的具體使用,體現(xiàn)多態(tài)性
9. 接口,實(shí)際上可以看做是一種規(guī)范
package com.wdl.day15;public class InterfaceTest {public static void main(String[] args) {System.out.println(Flyable.MAX_SPEED);System.out.println(Flyable.MIN_SPEED);
// Flyable.MIN_SPEED = 2;Plane plane = new Plane();plane.fly();}
}interface Flyable{//全局常量public static final int MAX_SPEED = 7900;//第一宇宙速度int MIN_SPEED = 1;//省略了public static final//抽象方法public abstract void fly();//省略了public abstractvoid stop();//Interfaces cannot have constructors
// public Flyable(){
//
// }
}interface Attackable{void attack();}class Plane implements Flyable{@Overridepublic void fly() {System.out.println("通過引擎起飛");}@Overridepublic void stop() {System.out.println("駕駛員減速停止");}}abstract class Kite implements Flyable{@Overridepublic void fly() {}}class Bullet extends Object implements Flyable,Attackable,CC{@Overridepublic void attack() {// TODO Auto-generated method stub}@Overridepublic void fly() {// TODO Auto-generated method stub}@Overridepublic void stop() {// TODO Auto-generated method stub}@Overridepublic void method1() {// TODO Auto-generated method stub}@Overridepublic void method2() {// TODO Auto-generated method stub}}
//************************************interface AA{void method1();
}
interface BB{void method2();
}interface CC extends AA,BB{}
總結(jié)
以上是生活随笔為你收集整理的interface关键字的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 对属性可以赋值的位置
- 下一篇: 内部类的使用