在读大学生,有什么不对的地方,望各位大神指正!
一丶创建一个接口(Demo.interface)
public interface Demo {
//1.可以定义常量
int MAX = 1;
//2.可以定义静态方法
public static void fun(){
System.out.println("静态方法");
}
//3.可以定义抽象方法(不是新特性)
abstract void fun1();
//4.可以定义默认方法
public default void fun2(){
System.out.println("默认方法");
}
}
二丶创建实现类并在实现类中测试(DemoTest.java)
public class DemoTest implements Demo {
@Override
public void fun1() {
System.out.println("抽象方法");
}
//测试
public static void main(String[] args) {
DemoTest demoTest = new DemoTest();
//可以调用抽象方法
demoTest.fun1();
//可以调用默认方法
demoTest.fun2();
//接口直接可以调用静态方法
Demo.fun();
//接口直接调用静态变量
System.out.println(Demo.MAX);
}
}
三丶总结
接口中除去可以定义抽象方法外,java8新增:可以在接口中定义常量,静态方法(static),默认方法(default)!
实现类可以调用抽象方法和默认方法,而调用常量和静态方法则要通过接口直接调用!