接口类型可用来声明一个变量,他们可以成为一个空指针,或是被绑定在一个以此接口实现的对象。这其实是通过接口实现多态的关键。
interface Fu { public abstract void method(); } class Zi implements Fu { public void method(){ System.out.println(“重写接口抽象方法”); } } //接口的多态使用 Fu fu = new Zi();
更多内容参考:Java 接口和多态
Java 标识接口
标识接口是没有任何方法和属性的接口,它仅仅表明它的类属于一个特定的类型,供其他代码来测试允许做一些事情。
使用标记接口的唯一目的是使得可以用 instanceof 进行类型查询,例如:
if(obj instanceof Cloneable) {………}
一些容器例如 Ejb 容器,servlet 容器或运行时环境依赖标记接口识别类是否需要进行某种处理,比如 serialialbe 接口标记类需要进行序列化操作。
接口的含义理解
接口可以理解成统一的协议, 而接口中的属性也属于协议中的内容。但是接口的属性都是公共的,静态的,最终的。
接口的成员特点:
所以,Java 接口中,使用变量的时候,变量必须被赋值。
//所以接口定义属性 public interface People { int age=10; String name="输出名字"; // 接口里面定义的成员变量都是 public static final 修饰 public void eat(); }
所有的变量必须给出初始值,且绝对不会被修改,因为隐藏的修饰符为 public static final。
在 JDK1.8,允许我们给接口添加两种非抽象的方法实现:
1、默认方法,添加 default 修饰即可;
2、静态方法,使用 static 修饰;示例如下:
interface Test{ //这个是默认方法 default String get(String aa){ System.out.println("我是jdk1.8默认实现方法..."); return ""; } //这个是静态方法 static void staticmethod(){ System.out.println("我是静态方法"); } }
调用得话,静态方法只能通过接口名调用,不可以通过实现类的类名或者实现类的对象调用,default 方法只能通过接口实现类的对象来调用。
感谢您的支持,我会继续努力的!
支付宝扫一扫,即可进行扫码打赏哦
1406Java 接口类型可用来声明一个变量
接口类型可用来声明一个变量,他们可以成为一个空指针,或是被绑定在一个以此接口实现的对象。这其实是通过接口实现多态的关键。
更多内容参考:Java 接口和多态
1405Java 标识接口
Java 标识接口
标识接口是没有任何方法和属性的接口,它仅仅表明它的类属于一个特定的类型,供其他代码来测试允许做一些事情。
使用标记接口的唯一目的是使得可以用 instanceof 进行类型查询,例如:
一些容器例如 Ejb 容器,servlet 容器或运行时环境依赖标记接口识别类是否需要进行某种处理,比如 serialialbe 接口标记类需要进行序列化操作。
1404Java 接口的含义理解
接口的含义理解
接口可以理解成统一的协议, 而接口中的属性也属于协议中的内容。但是接口的属性都是公共的,静态的,最终的。
接口的成员特点:
所以,Java 接口中,使用变量的时候,变量必须被赋值。
所有的变量必须给出初始值,且绝对不会被修改,因为隐藏的修饰符为 public static final。
1403Java 允许给接口添加两种非抽象的方法实现
在 JDK1.8,允许我们给接口添加两种非抽象的方法实现:
1、默认方法,添加 default 修饰即可;
2、静态方法,使用 static 修饰;示例如下:
调用得话,静态方法只能通过接口名调用,不可以通过实现类的类名或者实现类的对象调用,default 方法只能通过接口实现类的对象来调用。
1402Java 抽象类