问题标签 [marker-interfaces]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
0 回答
17 浏览

java - 如何创建差异化的标记类层次结构

我有一个案例,我有一个基本接口 ( X)、一个可更新接口 ( updatableX) 和一个 nonUpdatableInterface ( frozenX)。

frozenX实现应该实现 hashCode() 和 equals() 方法,以便适用于哈希映射和类似的集合。 frozenX可能是一个标记界面。

updatableX实现不会显式实现 hashCode() 或 equals() 因为区分一个 X 和另一个 X 所需的值是在updatableX.

X具有所有其他常用方法。

是否可以定义X,updatableX并且frozenX是一种确保不存在同时实现和Y的实现的方法?YupdatableXfrozenX

0 投票
0 回答
65 浏览

java - 在 Spring WebServices 中实现标记接口

我想实现 Marker 接口,有两个子类,类似于工厂模式。

具有所有 getter & setter & annotations 的 Bean 1

具有所有 getter & setter & annotations 的 Bean 2

当我传递这个 JSON 时,我得到了错误

0 投票
1 回答
43 浏览

lambda - @FunctionalInterface 只是一个标记接口还是更多?

我猜@FuntionalInterface 甚至在 Java 8 之前就存在(尽管没有直接命名为具有单一方法@FunctionalInterface的接口)。它只是一个标记接口还是会触发编译器检查以确保该接口包含一个且只有一个可以在 lambda 表达式中使用的方法?ComparatorComparable

0 投票
1 回答
49 浏览

java - 序列化,编译时检查与运行时检查

在了解 Java 中如何使用标记接口时,我从 ObjectOutputStream 类中找到了 writeObject 方法。它接收 Object 的实例作为输入,并且仅当给定的参数是 Serializable 的实例时才进行序列化。

为什么 writeObject 方法不接收 Serializable 实例作为输入而不是 Object,以便在编译时进行类型检查?将参数类型设为 Object 并对 Serializable 执行 instanceOf 检查的原因是什么?