如果class B
和class C
扩展了class A
并且我有一个对象类型B
或C
,我如何确定它是实例的哪种类型?
if (obj instanceof C) {
//your code
}
问题内容: 在C中,我们可以找到的大小int,char等我想知道如何获得物体的大小就像一个字符串,整数,等在Python。 相关问题:Python列表(元组)中每个元素有多少个字节? 我使用的XML文件包含指定值大小的大小字段。我必须解析此XML并进行编码。当我想更改特定字段的值时,我将检查该值的大小字段。在这里,我想比较输入的新值是否与XML中的值相同。我需要检查新值的大小。如果是字符串,我可以
问题内容: 我有三个类(,和),它们扩展了另一个类()。如何判断对象属于哪个子类?到目前为止,我有一个具有类名称的属性,但是我认为可以使用类似于javascript的typeof的运算符。(类似:) 问题答案: 您可以使用关键字。 但是请注意,需要使用它通常是不良设计的标志。通常,您应该在每个派生类中编写方法覆盖,以便您无需显式地检查是哪个类。
问题内容: 我看到lambda的类是,但是我认为对于代理类而言可能同样如此。 当然,我可以检查一下并应用于类名。 但是我想知道是否有一个更优雅,更强大的选项来确定给定的对象是否为lambda。 问题答案: 设计上没有官方的方法可以做到这一点。Lambda是语言的一部分;并通过功能接口集成到类型系统中。无需区分以lambda,命名类或内部类开头的生命,它们都是Runnable。如果您认为必须拆开类文
问题内容: 有没有一种简单的方法来确定变量是列表,字典还是其他?我回来的对象可能是任何一种类型,我需要能够分辨出两者之间的区别。 问题答案: 有两个内置函数可以帮助你识别对象的类型。你可以使用,如果你需要一个对象的确切类型,并以检查对象的反对的东西类型。通常,你希望使用大多数时间,因为它非常健壮并且还支持类型继承。 要获取对象的实际类型,请使用内置函数。将对象作为唯一参数传递将返回该对象的类型对象
问题内容: 严格的相等运算符将告诉您两个对象 类型 是否相等。但是,有没有办法判断两个对象是否相等, 就像 Java中 的哈希码 值 一样 ? 与这个问题相似,但需要更多的学术答案。上面的场景演示了为什么必须要有一个,而我想知道是否有任何 等效的解决方案 。 问题答案: 简短的答案 简单的答案是:不,没有通用的方法可以确定一个对象是否与您所指的含义相等。例外是,当您严格考虑对象是无类型的时。 长答
问题内容: 以下函数在其自己的线程中执行: 当执行到达该行时,将引发异常: 有谁知道如何锁定对象或函数以防止并发?我试图添加一个Lock对象: 和线 在功能开始时,但是没有用。 问题答案: 为了在一个对象上调用wait(),您必须在该对象上持有同步锁(尽管该锁实际上是在线程等待时释放的): 我必须承认,在这种情况下, 为什么 您要这样做让我感到困惑…