对Java中的接口的总结:
参考链接:http://www.cnblogs.com/dolphin0520/p/3811437.html
1.接口的定义:
接口是一系列方法的声明,一个接口只有方法的特征没有具体的方法实现,因此这些方法可以在不同的地方被不同的类实现,而这些实现可以具有不同的行为(功能)。
2.接口的表示:
接口用关键字interface表示:
格式:[修饰符] interface 接口名 {}
interface Demo{}
3.接口的实现:
接口实现使用implements表示:
格式:class 类名 implements 接口名 {}
public class Test implements Demo{}
4.接口的特点:
A:接口不能实例化,可以按照多态的方式来实例化;
B:接口的子类可以是抽象类,也可以是具体类,但具体类要重写接口中的所有抽象方法;
C:接口中的方法会被隐式地指定为public abstract方法且只能是public abstract方法;
D:接口中的变量默认为静态常量public static final,无法修改;
E:接口没有构造方法;
5.接口与抽象类的区别:
1).抽象类是对一种事物的抽象,即对类抽象,而接口是对行为的抽象,也就是对方法的抽象。
2).抽象类可以有具体的成员方法,而接口中只能存在抽象方法;
3).抽象类中的成员变量可以是各种类型的,而接口中的成员变量只能是public static final类型的;
4).接口中不能含有静态代码块以及静态方法,而抽象类可以有静态代码块和静态方法;
5)一个类只能继承一个抽象类,而一个类却可以实现多个接口。
6).抽象类如果需要添加新的方法,可以直接在抽象类中添加具体的实现,子类可以不进行变更;而接口进行了变更,则所有实现这个接口的类都必须进行相应的改动。
下面给一个接口的实现案例:
1 interface Test{ 2 public abstract void method(); 3 } 4 //接口类的实现: 5 public class Demo implements Test { 6 7 public static void main(String[] args) { 8 Demo d = new Demo(); 9 d.method(); 10 } 11 12 public void method(){ 13 System.out.println("method"); 14 } 15 }