接口
不能创建对象,可以被实现implements
定义格式
public interface 接口名{ //抽象方法 //默认方法 //静态方法 //私有方法 }
抽象方法,使用abstract 关键字修饰可省略
代码如下
public interface InterfaceName{ public abstract void method(); }
默认方法 和 静态方法
默认方法:使用default修饰,不能省略,给子类调用或者子类重写
静态方法:使用static修饰,给接口直接调用
代码吗如下
public interface InterfaceName{ public default void method(){} public static void method(){} }
私有方法和私有静态方法
私有方法:使用private修饰,给接口中的默认方法或者静态方法调用
代码如下
public interface InterfaceName{ private void method(){} }
基本实现~~~
使用implement关键字
如果不是抽象子类想要实现接口的话
1.所有的接口中的抽象方法都要被重写
2.接口中的默认方法,即可以直接调用,也可以重写
实现格式
calss 类名 implement 接口名{ //重写接口中的抽象方法(不然会报错) //重写默认方法,这个不会报错 }
来来来,我举个例子
接口
public interface Able{ public abstract void eat(); public abstract void sleep(); }
实现类
public class Animal implements Able{ @override public void eat(){ System.out.print("吃东西"); } @override public void sleep(){ System.out.print("睡"); } }
测试
public class Test{ public static void main(String[] args){ Animal a = new Animal(); a.eat(); a.sleep(); } } 吃东西 睡
现在我们来个默认打方法的使用
public interface Able{ public default void fly(){ System.out.println("飞"); } }
实现类
public class Animal implements Able{ //啥也不用写 也可以重写自己看着办 }
测试
public class Test{ public static void main(String[] args){ Animal a= new Animal(); a.fly(); } } 飞
静态
public interface Able{ public static void run(){ System.out.println("跑"); } }
实现类
public class Animal implements Able{ //这可不呢重写哟 }
测试
public class Test{ public static void main(String[] args){ //Animal.run会报错的 击沉不了 Able.fly(); } } 跑
还有很多很多。。。。写不下去惹~~太晚惹~~~~~~有问题直接问我吧qq:395621926 hws
浙公网安备 33010602011771号