instanceof相关内容

如果是父实例,instanceof 是否返回 true?

我有一个扩展 Parent 的类 Child. 父子 = new Child();如果(父实例的子实例){//做一点事} 这是返回真还是假,为什么? 解决方案 是,会的.为什么不呢? 因为 child 实际上是 Parent 的一个实例.如果您只想为孩子执行操作,则应检查 if (child instanceof Child){} 但是,您应该记住 Scott Meyers ..
发布时间:2022-01-24 16:21:17 Java开发

为什么要在 instanceOf 之后强制转换?

在下面的示例中(来自我的课程包),我们希望给 Square 实例 c1 一些其他对象 p1 的引用,但前提是这 2 个是兼容的类型. if (p1 instanceof Square) {c1 = (Square) p1;} 这里我不明白的是,我们首先检查 p1 确实是一个 Square,然后我们仍然对其进行投射.如果是Square,为什么要投? 我怀疑答案在于表面类型和实际类型之间的区 ..
发布时间:2022-01-24 15:58:31 Java开发

通过窗口传递对象时,instanceof 运算符失败

为了在窗口之间传递数据,我通过 window.open 方法打开新窗口并将新打开的窗口的属性设置为对象.这让我不仅可以传递数据,还可以共享变量的实例,这意味着如果我在一个窗口上修改对象或其任何派生属性,它会在所有窗口上修改它. 然而,问题是 instanceof 操作符变得非常有趣. 当我这样做时 m 类型m instanceof 对象 第一行返回"object",第二行返回fal ..
发布时间:2022-01-09 20:28:23 前端开发

instanceof 如何在接口上工作

instanceof 可用于测试对象是给定类的直接实例还是后代实例.instanceof 也可以与接口一起使用,即使接口不能像类一样被实例化.谁能解释一下 instanceof 是如何工作的? 解决方案 首先,我们可以在中存储实现特定interface的类的instances>接口引用变量像这样. package com.test;公共类测试实现可测试{公共静态无效主(字符串 [] ar ..
发布时间:2021-12-31 14:45:39 Java开发

正则表达式的类型

无论如何要检测 JavaScript 对象是否为正则表达式? 例如,我想做这样的事情: var t =/^foo(bar)?$/i;警报(t 类型);//我希望它返回“regexp" 这可能吗? 谢谢! 编辑:感谢所有的答案.看来我有两个很好的选择: obj.constructor.name === "RegExp" 或 obj instanceof RegExp ..
发布时间:2021-12-30 15:30:38 前端开发

缺少 Class.isInstance() 的 GWT 解决方法

我正在尝试在 GWT 中编写一个作业调度系统,该系统维护一组异常(Class[] exceptions),这可能通过重试作业来解决.为此,如果调度程序捕获到异常,我需要查看此异常是否与数组中的类之一匹配.所以,我想要一个这样的功能: boolean offerRetry(Exception exception) {for (Class e: 异常)if (e.isInstance(excepti ..
发布时间:2021-12-28 22:06:26 Java开发

Java 中是否有类似 instanceOf(Class c) 的东西?

我想检查对象 o 是 C 类的实例还是 C 的子类的实例. 例如,如果 p 属于 Point 类,我希望 x.instanceOf(Point.class) 为 true 和 x.instanceOf(Object.class) 为 true. 我希望它也适用于盒装原始类型.例如,如果 x 是 Integer 那么 x.instanceOf(Integer.class) 应该是 tru ..
发布时间:2021-12-26 14:18:23 Java开发

这是“instanceof"的用法吗?运营商认为设计不好?

在我的一个项目中,我有两个“数据传输对象"RecordType1 和 RecordType2,它们继承自 RecordType 的抽象类. 我希望两个 RecordType 对象都在“处理"方法中由同一个 RecordProcessor 类处理.我的第一个想法是创建一个通用的流程方法,该方法委托给两个特定的流程方法,如下所示: 公共 RecordType 流程(RecordType 记录) ..

实现工厂设计模式时如何避免“instanceof"?

我正在尝试实现我的第一个工厂设计模式,但我不确定在将工厂制造的对象添加到列表时如何避免使用 instanceof.这就是我想要做的: for (Blueprint bp : blueprints) {车辆 v = VehicleFactory.buildVehicle(bp);allVehicles.add(v);//我可以在不使用 'instanceof' 的情况下完成此操作吗?如果(v 汽车 ..
发布时间:2021-12-22 08:39:49 Java开发

java 优化 nitpick:转换某些东西并让它抛出异常比在转换之前调用 instanceof 来检查更快吗?

在任何人说任何话之前,我只是出于好奇而问这个问题;我不打算根据这个答案进行任何过早的优化. 我的问题是关于使用反射和投射的速度.标准的说法是“反射很慢".我的问题是到底哪个部分很慢,为什么?特别是在比较某事物是否是另一个实例的父项时. 我非常有信心将一个对象的类与另一个类对象进行比较与任何比较一样快,大概只是对已经存储在对象状态中的单例对象进行直接比较;但是如果一个班级是另一个班级的家 ..
发布时间:2021-12-20 16:27:38 Java开发

测试对象是否是参数类型的实例

有没有办法确定一个对象是否是泛型类型的实例? public 测试(对象对象){如果(对象实例 T){...}} 这显然行不通.有替代方案吗?就像我想使用 Java 反射来实例化一个类,然后检查以确保它是泛型 T 类型. 解决方案 执行此检查的唯一方法是您是否拥有表示类型的 Class 对象: Class类型;//可能传递给方法如果(type.isInstance(obj)){//.. ..
发布时间:2021-12-15 10:19:14 Java开发