一、接口定义
概念:
一,Java接口,Java语言中存在的结构,有特定的语法和结构;
二,一个类所具有的方法的特征集合,是一种逻辑上的抽象。前者叫做“Java接口”,后者叫做“接口”。
格式:jdk8以后知识
修饰符 interface 接口名 [extends 父接口]{ 常量 抽象方法 默认方法 }
接口特征:
接口是隐士抽象,变量和方法都可以不用abstract,默认添加abstract
接口中的方法是公有的
1、定义父类接口
2、继承接口 子类继承父类(Cat继承Animal)
3、多继承接口 子类继承父类(Cat继承Animal、run) ,接口是可以多继承的
4、类实现接口
当类实现接口时,必须实现所有接口,否则类要声明为abstract类
类使用implements关键字实现接口
规则注意点:
一个类可以同时实现多个接口
一个类可以继承一个类,可以实现多接口
package interfacetest; interface Animal{ // 定义变量 只能是public修饰符 其它修饰符修饰报错 public static final int A = 5; //缺省 修饰符 默认public static final int B = 5; //默认public static final int C = 5; //public 定义方法,其它修饰符修饰报错 // public abstract int run(int a); // 默认添加abstract // public int eat(); public void dance(); } //接口继承接口用extends 接口可以多继承 interface Cat extends Animal{ public void catchMouse(); } //类继承接口要用implement public class ImplementsOverrideMeth implements Cat{ /** * 继承Cat不仅要重写Cat接口方法,还要重写父接口Animal的方法 */ @Override public void dance() { System.out.println("Animal方法---父类"); } @Override public void catchMouse() { System.out.println("Cat方法---子类"); } public static void main(String[] args) { //创建实现类 ImplementsOverrideMeth imp = new ImplementsOverrideMeth(); //实现抽象类 imp.dance(); imp.catchMouse(); } }