接口类
接口类
-
接口 :接口是抽象方法的集合.
-
特性:
-
定义的属性默认是public static final修饰.
-
public interface Person { //定义的属性写不写都是 public static final 修饰. public static final int VER=1; int BASIC=0; //走 public void walk(); //跑 public void run(); } //测试代码 import java.lang.reflect.Field; public class Main { public static void main(String[] args) { Class clazz=Person.class; for (Field field:clazz.getDeclaredFields()) { System.out.println(field); } } }
out: public static final int Person.VER public static final int Person.BASIC
-
只能定义抽象方法.
-
public interface Person { //定义的属性写不写都是 public static final 修饰. public static final int VER=1; int BASIC=0; //走 public void walk(); //跑 public void run(); public void sleep() { } }
out: Error:(12, 5) java: 接口方法不能带有主体 sleep()
-
接口是
implement
关键字实现. -
不能定义构造方法.
-
public interface Person { //定义的属性写不写都是 public static final 修饰. public static final int VER=1; int BASIC=0; public Person() { } //走 public void walk(); //跑 public void run(); }
out: Error:(7, 18) java: 需要<标识符>
-
一个普通的类必须实现接口定义的所有方法.
-
public interface Person { //定义的属性写不写都是 public static final 修饰. public static final int VER=1; int BASIC=0; //走 public void walk(); //跑 public void run(); } public class Man implements Person { }
out: Error:(1, 8) java: Man不是抽象的, 并且未覆盖Person中的抽象方法run()
-
java中允许接口多实现.
-
import java.io.Serializable; public class Man implements Person, Serializable { public void walk() { } public void run() { } }
-
-
用途:
- 在需要实现多继承的时候使用接口.
- 起模板的作用.
-
后语:请大神深入指导.