正文之前
其实今天并没有学什么,因为醒来的时候已经11点多了,看一会小说出去吃饭,吃完饭已经下午一点,然后看小说到晚上九点多。九点多才开始看书,我很愧疚。但是每天的打卡还是要继续,索性就干脆写点《Java编程思想》的内容吧!
正文
第一点:接口的含义:
万事万物之间总存在着那么一些共性。然后我们利用这些共性就可以沟通不同种类的实例。这个共性就是接口,它并不能实例化,只是一些属性的集合,所以下面图片中才有Dummy 方法这种说法。而我更喜欢叫他抽象的类,或者是纯虚XX。
第二点:接口的使用方法:有方法但不能有方法体
接口就是把诸多含有共性的东西组合起来。但是这些东西只可意会,不能言传。也就是说你并不能详细的定义。因为如果你详细的定义了,那就成了基类,接口的特性也就消失了。继承子接口的所有方法必须重写,除非你把这个累定义为抽象类。抽象类等同于C++的纯虚函数。
第三点:接口的访问控制
接口默认是public 的,不能只是在本包内使用,很明显,如果有别的地方继承了它,如果不能使用,那就很尴尬了。。如果只在本包内使用的话,那么就违背了他的初衷。接口很明显的意思就是对很多地方开放。所以默认都是public。
第四点:Java的多重继承实现:
加了中的多重继承实现依赖于接口机制。也就是一个实际的子类可以被允许含有诸多接口的特性。这个在基类继承中是不被允许的,因为Java规定了一个子类只能继承自一个父类。但是并没有限定接口可以继承多少个,所以这就是Java中多重继承的由来。另外,在多重继承时,可以同时继承父类,那么父类所带来的方法体的实现,可以在接口的方法实现中直接复用。你可以这么理解:当一个子类,同时继承来自父类和接口的性质的时候,优先继承父类也就是说把父类的所有方法全部先定义一遍。然后再继承来自接口的性质。如果父类中与接口有同名方法。那么就相当于已经定义过一次。可以不用在重复定义了。当然,如果你要重写,那直接定义即可。
第五点:接口的继承与扩展!
接口的继承和普通类的继承没什么两样。只是子接口同样不能定义方法体。所以接口的继承等同于是接口的扩展。使用子接口就等于是使用扩展之后的接口。
正文之后
结束了。今天结束了。 但是♀女票不理我了是什么鬼????