Java中 接口(interface) 继承(extends) 类(class)的问题
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Java中 接口(interface) 继承(extends) 类(class)的问题相关的知识,希望对你有一定的参考价值。
Java中 接口中不能有已经实现的方法。那如果这个接口继承了别的有已经实现方法的类,那么它当中不就有了已经实现的方法吗? 比如说,所有类都继承Object 那,接口 例如Collection 不就有已经实现的方法了吗? 这样接口中岂不是有已经实现的方法了?
extends可以理解为全盘继承了父类的功能implements可以理解为为这个类附加一些额外的功能
举个例子,animal是一个父类,cat,dog,bird,insect都extends了animal,
但是cat,dog,bird还可以implements比如run,shout这些interface,bird,insect可以implements比如fly这些interface 参考技术A 貌似接口只能继承接口,不能继承非接口包括
抽象类
在内的其它类,object祖先类貌似是体现在接口的实现类之上。
java中如何使用接口继承(Extending Interfaces)
5.接口继承(Extending Interfaces)(视频下载) (全部书籍)
马克-to-win:对于以下的例子,Moto788这个产品只有照相takePhoto和通话talk的功能。而Moto888更为高级,除了照相和通话功能以外,还有mp3的功能。接口继承到底有什么意义呢?马克-to-win:1)通过接口继承很方便实现功能自由选择组合。同时发布Moto788和Moto888这两款产品 2)当初由于各方面的限制,设计有局限,比如Moto788没有mp3的功能,意识到这个缺陷后,通过接口继承升级到Moto888,很容易实现功能升级, 竞争。
例1.5:---本章源码
interface PhotoTake {
void takePhoto();
}
interface Mp3{
void playMusic();
}
interface IMoto788 extends PhotoTake{
void talk();
}
interface IMoto888 extends PhotoTake,Mp3{
void talk();
}
class Moto788Mark_to_win implements IMoto788 {
public void talk() {
System.out.println("马克-to-win: 788和传统电话一样, 我能通话");
}
public void takePhoto() {
System.out.println("马克-to-win: 我能照相");
}
}
class Moto888Mark_to_win implements IMoto888 {
public void talk() {
System.out.println("马克-to-win: 888和传统电话一样, 我能通话");
}
public void takePhoto() {
System.out.println("马克-to-win: 我能照相");
}
public void playMusic() {
System.out.println("马克-to-win: 我能放音乐");
}
}
public class Test {
public static void main(String args[]) {
Moto888Mark_to_win m888 = new Moto888Mark_to_win();
m888.talk();
。。。。。。。。。。。。。。。。。
详情请进:http://www.mark-to-win.com/index.html?content=JavaBeginner/javaUrl.html&chapter=JavaBeginner/JavaBeginner4_web.html#PointInterfaceExtend
以上是关于Java中 接口(interface) 继承(extends) 类(class)的问题的主要内容,如果未能解决你的问题,请参考以下文章
java中如何使用接口继承(Extending Interfaces)