关键字之interface(接口)

interface是抽象方法和常量的集合

从本质上来说,interface是一种特殊的抽象类,他存在着抽象方法(不用在方法前加abstract)和常量(final修饰的变量),但是却不能定义变量和实现方法


public interface UserDao  {

    final String USER_NAME="username";
    public void delete(Long uid);
}

 接口的特点

1)多个无关的类可以使用同一个接口

2)一个类可以实现多个接口(类似多继承,java中只有单继承)

3)接口中被定义的常量被默认是  public static final  修饰,你不写上去,他也是认为你是被这个修饰的

4)接口中的抽象方法被默认为public  也只能是public

5)你如果增加了接口的方法,那你糟了,实现了这个接口的类(implements)全都没法运行了,要全改过和接口对上才行.

 接口和抽象类对比

接口不能实现方法,抽象类可以

一个类可以有无数个接口,但抽象类只能有一个     接口是implements      抽象类是继承的(extends)

抽象类增加了新方法没事,不能是abstract方法  继承了抽象类的类美滋滋的就用起来了,  接口增加了新方法,你要去implements的类修改,增加.

抽象类可以有变量,常量     接口只能有常量(就算你写的是变量,该变量前缀默认为  public static final)

展开阅读全文

没有更多推荐了,返回首页