一、今日学习内容
1、接口也可以继承
(1)Java中的类是属于单继承的。Java中的接口也可以实现继承,并且接口可以实现多继承。
示例:接口继承接口
public interface A extends B{ } interface B{ public void b() ; }
注意:接口只能继承接口,不可以继承普通类和抽象类,否则会报错!
2、标记接口
标识接口是没有任何方法和属性的接口。它仅仅表明它的类属于一个特定的类型,供其他代码来测试。使用标记接口的唯---目的是可以用instanceof进行类型查询例如:if (obj ihstanceof Cloneable) ......
在Java中常见的标记接口有Serializable接口和Clone接口。
(1)java.io.Serializable 接口
java.io.Serializable接口仅仅表明,实现该接口的类,可以实现类的序列化和反序列化。标记接口仅仅是一个标记,此种接口并没有抽象方法。
(2)java.lang.Cloneable 接口
java.lang.Cloneable接口表明0bject.clone(方 法可以合法地对该类实例进行按字段复制。实现此接口的类应该使用公共方法重写Object.clone。
3、综合实例:买车
接口:
public interface Car { public String getName(); public String getColor(); public double getPrice(); }
BMW类实现这个接口:
public class BMW implements Car{ public String getName() { String name="宝马"; return name; } public String getColor() { String color="红色"; return color; } public double getPrice() { double price=800000; return price; } }
测试类:
public class CarTest { public static void main(String[] args) { Car car=new BMW(); String name=car.getName(); String color=car.getColor(); double price=car.getPrice(); System.out.println("三年后我将送我的女朋友一辆"+name+",颜色是"+color+",价格是"+price+"元"); } }
输出结果:三年后我将送我的女朋友一辆宝马,颜色是红色,价格是800000.0元
二、遇到的问题
对标记接口不理解
三、明日计划
继续学习第八章的内容