当前位置: 首页 > 面试题库 >

如何让JVM了解Java中的自定义标记接口

顾乐心
2023-03-14
问题内容

是否可以在Java中编写我们自己的标记接口。我正在写类似的代码

public interface MyMarker {

}

那是标记界面吗?

如果有可能,那么我如何让JVM知道该接口是我自己创建的标记器接口?


问题答案:

是的,那是标记界面。您将测试对象是否“实现”它的方法很简单:

if (x instanceof MyMarker)

对于特定的 (而不是对象),您想要

if (MyMarker.isAssignableFrom(otherClass))

不过,您应该考虑使用注释而不是标记界面。它们并非总是直接替换,但在许多情况下,它们用于相同的目标,并且注释(IMO)更干净。



 类似资料:
  • 问题内容: 标记界面没有任何东西。它仅包含接口声明,然后JVM如何对实现此标记接口的类进行处理? 我们可以创建任何新的标记器接口吗? 问题答案: 您的问题确实应该是 编译器 如何处理标记接口,而答案是: 与其他接口没有什么不同 。例如,假设我声明了一个新的标记接口: …然后声明一个实现的类: 我现在可以通过type的引用来引用的实例: …,并(在运行时)检查对象是否实现: 后一种情况通常是使用标记

  • 我正在创建一个自定义JSP标记,以从数据对象生成表。为了使代码更简洁,我想为行创建一个单独的标记文件,但我似乎无法在我的主自定义标记中包含自定义标记(抱歉,我知道这很混乱)。 例如我有: 桌子标签: 一行标签 注意第一个文件中的导入(<代码> 我试图将导入更改为<代码> 我做错了什么?

  • 问题内容: 我正在http://www.cafeaulait.org/javafaq.html上阅读#6.10项,然后我开始怀疑大型企业如何创建自己的JVM实现。一个人会尝试(或可行)实验性的东西吗? 问题答案: 从技术上讲,创建该新JVM所需的所有信息都是该语言和目标平台的公共规范。即使字节码解释在很大程度上相同,JVM还是需要根据其是要在台式机还是手机上运行而有所不同。 一些开始寻找信息的地方

  • 我创建了一个自定义比较器,可以按降序对获胜数进行排序,但我不确定它是如何工作的,有人能解释一下这是如何按降序排序的吗?

  • 我尝试获取西南边界点的,将其转换为像素,将其向内移动300px,然后将其转换回以用作新的西南边界点。但这不起作用,因为计算是在变焦之前完成的,所以300px的位移最终太多了...我想写我自己的,但我遇到了同样的问题,因为它是在缩放之前完成的。

  • 我正在使用React视图上的Highcharts。出于可访问性和搜索引擎优化的原因,我想定制标记,但我在文档中找不出如何实现。Highcharts会自动插入一个标记,如下所示: <代码> 有没有办法改变这一点,或者这是硬编码的?