Java入门——day16

一、今日学习

1.Java接口的特征归纳

(1)Java接口中的成员标量默认为public、static、final类型的,而对于它们都可以省略,接口中的成员变量为常量,并且建议全部使用大写,单词之间用“-”分隔。

(2)Java接口中的方法默认都是public、abstract类型的,并且public和abstract是可以省略的,接口中的方法没有方法体,不能被实例化。

(3)Java接口中只能包含public、static、final类型的成员变量和public、abstract类型的成员方法。接口中的变量必须初始化,并且方法必须是抽象方法,否则会报错。

(4)接口中没有构造方法,不能被实例化。

(5)一个接口不能实现另一个接口,但它可以继承多个其他的接口。

(6)Java接口必须通过类来实现它的实现类来实现抽象方法。

(7)当类实现了某个Java接口时,它必须实现接口中的所有抽象方法,否则,这个类必须声明为抽象的。

(8)不允许创建接口的实例化,但允许定义接口类型的引用变量,该引用变量引用实现了这个接口的类的实例。

(9)一个类只能继承一个直接的父类,但可以实现多个接口,间接地实现了多继承。


2.接口的继承

Java中的接口可以实现多继承

1 public interface A extends B{
2 }
3 interface B{
4     public void b();
5 }

注意:接口只能继承接口,不能继承普通类和抽象类,否则会报错!


3.标记接口

(1)标识接口是没有任何方法和属性的接口,它仅仅表明它的类属于一个特定的类型,供其他代码来测试。

(2)使用标识接口的唯一目的就是可以用instanceof进行类型查询。

(3)常见的标记接口有Serializable接口和Clone接口:

  • java.io.Serializable接口:表明实现该接口的类,可以实现类的序列化和反序列化。标记接口仅仅是一个标记,此种接口并没有抽象方法。
  • java.lang.Cloneable接口:表明Object.clone()方法可以合法地对该类实例进行按字段复制。实现此接口的类应该使用公共方法重写Object.clone

二、遇到问题

标识接口不太会使用

三、明日学习

第六章综合实例

原文地址:https://www.cnblogs.com/znjy/p/13357641.html