??????????????????????????????????????????????????????????????????????????? Java面向?qū)ο蟾呒?/p>
1.接口(interface):
????????? 它是一個特殊的抽象類斩狱,它只能聲明常量與抽象方法掖疮。
規(guī)則:
???????? 接口中默認(rèn)的方法都是?? public abstract
???????? 接口中默認(rèn)的常量都是?? public static final
注意:
??????? 接口不能實例化
?????? 接口指向它實現(xiàn)類的對象(多態(tài)中父類引用指向子類的對象)
接口在實際應(yīng)用中痘拆,就是一種規(guī)范(模板),只關(guān)注系統(tǒng)所要使用的方法氮墨,而無需關(guān)注如何實現(xiàn)(細(xì)節(jié))
一個類可以實現(xiàn)一個或多個接口
一個類可以在繼承另一個類的同時實現(xiàn)一個或多個接口
接口可以使用方法的定義和實現(xiàn)相分離,降低模塊間的耦合性
語法:
public interface person{
??????? //常量
?????? //public static final int a = 10;
????? // 吃飯的方法
????? public abstract void eat();
????? //睡覺
????? public abstract void sleep();
?????? //打游戲
????? public abstract void game();
}
注意:實現(xiàn)類會實現(xiàn)接口中的所有抽象方法
public class PersonImpl implements Person {
@Override
public void eat() {
System.out.println("eat......");
}
@Override
public void sleep() {
System.out.println("sleep......");
}
@Override
public void game() {
System.out.println("game......");
}
}
//吐葵、规揪、、温峭、猛铅、、凤藏、奸忽、測試類、揖庄、栗菜、、蹄梢、疙筹、、、而咆、\\
public class TestPersonImpl{
????? public void method(Person p){
????????????? p.eat();
}
???? public person method1(){
?????????????? person person = new PersonImpl();
?????????????? return person;
}
}
public static void main(String[] args){
?????? TestPersonImpl testpersonimpl = new TestPersonImpl();
??????? person p = new PersonImpl;
??????? testpersonimpl.method(p);
?????? Person pp = testPersonImpl.method1();
????????????????? pp.game();
}