当前位置: 首页 > 知识库问答 >
问题:

instanceof何时返回false?

徐学潞
2023-03-14

我知道当对象是特定类的实例时,instanceof返回TRUE。例如:

B extends A
C extends A

B b = new B();
C c = new C();

b instanceof A // returns TRUE
c instanceof B // won't compile (error: inconvertible types)
null instanceof A // returns FALSE

共有1个答案

华项明
2023-03-14

下面是一个计算结果为false的示例

class A {}
class B extends A {}

A a = new A();
a instanceof B   // false

现场演示:http://ideone.com/cqltqe。

 类似资料:
  • 问题内容: “foo” instanceof String //=> false “foo” instanceof Object //=> false true instanceof Boolean //=> false true instanceof Object //=> false false instanceof Boolean //=> false false instanceof Ob

  • 问题内容: 从测试中,我得出结论,在以下三种情况下,结果将会恢复。 连接关闭后。例如,客户端调用socket.close()或发生任何套接字错误,它将返回空字符串。 有些数据来了,数据的大小超过。 一些数据来了,数据的大小小于并且短时间后没有更多数据来了(我发现0.1s可以工作)。 有关#3的更多详细信息: 当我运行时,回显: 当我运行时,回显: 我的结论正确吗?在哪里可以看到有关#3的官方说明?

  • 问题内容: 当用Java编程时,我几乎总是出于习惯,编写如下代码: 大多数时候甚至都没有考虑它。现在,问题是:我应该 始终 将接口指定为返回类型吗?还是建议使用接口的实际实现,如果是,在什么情况下使用? 显然,使用该接口有很多优点(这就是为什么它存在的原因)。在大多数情况下,库函数使用哪种具体实现并不重要。但也许在某些情况下确实很重要。例如,如果我知道我将主要随机访问列表中的数据,那将是一个坏习惯

  • 我试图将以下模式匹配开关实例的结果分配给变量languageCodeOfReturnValue。 但此代码会导致以下警告: “值”开关(对象){case PlantGuidePageWrapperDTO PlantGuidePageWrapperDTO- 当我删除子句时,警告会消失,但会留下语法错误,因为没有涵盖所有可能的值。当我将替换为空字符串时,警告会消失。但是我真的希望默认值为。 因此,我的

  • 问题内容: 我有一个延伸的课程。 这返回true还是false,为什么? 问题答案: 是的,会的。为什么不呢? 因为child实际上是Parent的一个实例。如果您只想为孩子做手术,应该检查一下 但是,您应该记住Scott Meyers撰写的来自Effective C ++的以下声明: “每当您发现自己编写的代码形式为:“如果对象的类型为T1,则执行某些操作,但是如果对象的类型为T2,则执行其他操

  • 问题内容: 说我有一些Java代码: 还有一些代码可以加载: 能永远?为什么/为什么不呢?如果是这样,在什么情况下? 问题答案: 根据此方法javadoc: 返回该类的类加载器。一些实现可能使用null来表示引导类加载器。如果此类是由bootstrap类加载器加载的,则此方法在此类实现中将返回null。