Java之旅_面向对象_接口

参考摘自:http://www.runoob.com/java/java-interfaces.html

 

接口(interface)在Java中是一个抽象类型,是抽象方法的集合。

一个类通过implements继承接口,来实现接口中所有抽象方法。(抽象类除外)

声明接口:

interface Animal{
    public void eat();
    public void travel();
}

 接口有以下特性:

1.接口是隐式抽象的,当声明一个接口的时候,不必使用abstract关键字

2.接口中每一个方法也是隐式抽象的,声明时同样不需要abstract关键字

3.接口中的方法都是公有的

接口的实现:

类使用implements关键字实现接口。

当类实现接口时,需要实现接口中所有的方法,否则,类必须声明为抽象类

实例:

public class Dog implements Animal{
    public void eat(){
        System.out.println("Dog eat");
    }
    public void travel(){
        System.out.println("Dog Travel");
    }
    public void otherMethod(){
        System.out.println("This class method");
    }
    public static void main(String[] args){
        Dog d = new Dog();
        d.eat();
        d.travel();
    }
}
运行结果:
Dog eat Dog Travel

接口的继承:

使用extends关键字,与类之间的继承相似

//文件名:Sports.java
public interface Sports{
    public void setHomeTeam(String name);
    public void setVisitingTeam(String name);
}
//文件名:Football.java
public interface Football extends Sports{
    public void homeTeamScored(int points);
}
//文件名:Hockey.java
public interface Hockey extends Sports{
    public void homeGoalScored();
}

Football接口自己声明了一个方法,从Sports继承了两个方法,这样实现Football接口的类需要实现3个方法 

接口的多继承:

类不能多继承,但接口可以

public interface Hockey extends Sports,Football

标记接口:

没有任何方法的接口称为标记接口。

package java.util;
public interface EventListener{}

 

posted @ 2018-03-13 17:10  happy_xiaoxiao  Views(110)  Comments(0Edit  收藏  举报