java基础-接口详解

人生像攀登一座山,而找寻出路,却是一种学习的过程,我们应当在这过程中,学习稳定、冷静,学习如何从慌乱中找到生机。——席慕蓉

如果一个类中所有的方法均为abstract方法,那么这个类就可以声明为接口

public abstract class MyClass {
    public abstract void show();
    public abstract String fun();
    public abstract int [] method();
}

可以改为如下代码

public interface MyInterface {
     void show();
     String fun();
     int [] method();
}

接口的定义
使用interface修饰,是一种数据类型,引用数据类型

接口的定义:

public interface MyInterface {
     void show();
}

接口中可以包含什么?

(1)抽象方法
public abstract方法

(2)非抽象方法

/**JDK1.8新特性 ,必须使用default关键字*/
     public default void method2(){
         
     }

(3)属性(public static final)常量,public static final可以省略不写

public interface MyInterface {
      String name="张三";
      public static final String name2="张三";
}

接口中可不可以包含构造方法吗?不允许,因为接口不是类
接口与类的关系?
(1)类去实现接口中的抽象方法,实现关系 ,implements

public class InterfaceImpl implements MyInterface{
  //实现接口中的所有抽象方法
}

(2)一个类存在继承关系,又存在实现关系?extends前?implements前?
继承 父子关系 亲爹
实现 实现关系-干爹
extends 在前,implements在后

public class Stuent extends Person  implements Play{

}

(3)如果父类与接口中有完全相同的方法(一模一样),子类/实现类所实现的方法是父类的?接口的?
父类优先于接口,子类实现的是父类中的方法

(4)如果父类中与接口中有同名方法,对子类/实现类有什么要求呢?
父类与接口中的方法,在子类/实现类中构成方法的重载

既然开始了,就不要停下学习的脚步,如果想系统学习java,可以下载全套课程
附上链接:http://qr09.cn/CNk0lI

你可能感兴趣的:(java基础-接口详解)