gpt4 book ai didi

Java接口(interface)类型基本问题

转载 作者:行者123 更新时间:2023-12-01 06:41:33 24 4
gpt4 key购买 nike

我有一个关于 Java 接口(interface)的基本问题。

假设我有一个接口(interface) IA接口(interface) IB 扩展 IA

现在,

class CK implements IB,
class CL implements IB,
class CM implements IB,

...等

void foo(IA iFace) {
// I know how to check if iFace is of type CK/CL/CM ...

// Is it possible to check if iFace is of type IB ?

}

希望我的问题很清楚。

感谢您的回复。

最佳答案

可以使用instanceof进行检查:

if (iFace instanceof CK)

等等

...但这通常表明您的设计出了问题,如果您必须以不同的方式处理事情。接口(interface)的想法应该是您可以以相同的方式对待它们,并让实现以适当的方式表现出不同的行为。

事情并不总是这样,所以有时 instanceof 是你能做的最好的事情,但这应该是一种罕见的情况.

关于Java接口(interface)类型基本问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5357164/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com