首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >JAVA OOP继承树

JAVA OOP继承树
EN

Stack Overflow用户
提问于 2015-08-17 10:35:27
回答 2查看 682关注 0票数 3

假设我们有5个类或接口: U、G、B、Z和X,每种类型都有其变量:

代码语言:javascript
运行
复制
U u;
G g;
B b;
Z z;
X x;

这将汇编:

代码语言:javascript
运行
复制
u = z;
x = b;
g = u;
x = u;

这将不会编译:

代码语言:javascript
运行
复制
u = b;
x = g;
b = u;
z = u;
g = x;

树解决方案:

问题:为什么G是一个接口而不是抽象类?也可以是G和X都是接口吗?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2015-08-17 10:39:44

为什么G是一个接口而不是abstract类?

因为U可以完全扩展一个类(abstract与否)。因为X是一个(abstract)类,那么G必须是一个接口。

GX可以都是接口吗?

是。Java允许类(如U)实现多个接口。

票数 1
EN

Stack Overflow用户

发布于 2015-08-17 10:39:34

为什么它是一个接口?很可能是因为X是一个类,而你的U类只能扩展一个类。

G和X都是接口吗?也许,取决于内容和它应该如何使用。如果它包含已实现(非默认)方法,并且必须能够自己初始化,则不,它将不是一个接口。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/32048205

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档