黑马程序员技术交流社区

标题: 抽象类,接口和实体类的问题?不大明白,求解答 [打印本页]

作者: 根号5    时间: 2012-4-29 16:23
标题: 抽象类,接口和实体类的问题?不大明白,求解答
接口可以继承接口吗?抽象类可以实现接口吗?抽象类可以继承自实体类吗?为什么,谢谢
作者: 袁培育    时间: 2012-4-29 19:34
接口可以继承接口,而且可以多继承,抽象类也可以继承接口,但必须实现接口的所有方法。抽此类也可以继承实体类。
作者: 林德燚    时间: 2012-4-29 19:49
接口可以继承接口吗?抽象类可以实现接口吗?抽象类可以继承自实体类吗?为什么,谢谢

1、接口可以继承接口,一个接口可以有子接口,因为子接口需要更多定义的抽象方法;
2、抽象类可以实现接口,他的实现其实就想子接口继承父接口一样;因为接口是特殊的抽象类;都可以有子接口了子类肯定有的;
3、抽象类可以继承实体类;抽象类与实体类最大的区别就是类定义为抽象不能实例化;所以它也有类的共性;可以继承父类的成员;
这个问题其实在我们查看java API帮组文档时应该可以经常看到,
举个例子:
InputStream 字节输入流看它的class签名;
public abstract class InputStream extends Object implements Closeable
抽象类和接口最大的区别就是抽象类可以有方法体的方法(非抽象方法);
作者: 曾_强    时间: 2012-4-29 23:57
1、接口可以继承接口。而且一个接口可以继承多个接口.interface C extends A, B {}是可以的.

一个类也可以实现多个接口:class D implements A,B,C{}

但是一个类只能继承一个类,不能继承多个类:class B extends A{}

在继承类的同时,也可以继承接口:class E extends D implements A,B,C{}

2、抽象类可以实现接口
一个类要实现一个接口,那么必须实现接口里的每个方法,那么如果你实现了接口里的一部分方法,而有些方法没有实现的话,那么这个类就必须定义成抽象类,如果全部实现了接口中的方法,你可以定义这个类抽象,也可以定义这个类为实体类(因为一个类含有抽象方法的话这个类就必须定义成抽象类)。 即可以以一个抽象类来实现接口。

3、抽象类可以继承自实体类
但抽象类继承实体类,父类必须有明确的构造函数或构造方法。





欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2