java - Java中是否可以为接口(interface)创建注释,强制实现类的构造函数的特定参数列表

标签 java interface constructor annotations

我正在 Java 中寻找一种方法来强制实现特定接口(interface)的类定义特定的构造函数。

示例:

@Constructor(X, Y, Z)
public interface A {}

public class B implements A {
    public B(X x, Y y, Z z) {}
}

在这种情况下,它将强制实现类包含具有该参数列表的构造函数。有没有办法真正做到这一点?

附注我知道这违背了接口(interface)的设计实践,在我的例子中,由于某种编译器解耦的工厂方法实现,这只是实现类所需要的。

最佳答案

为什么不使用抽象类呢?否则,您将必须推出注释处理器和类路径扫描以检查所有实现类是否遵守注释。如果您决定走这条路,maven 插件还可以在编译阶段提供帮助并扫描类路径以确保实现类已定义构造函数

关于java - Java中是否可以为接口(interface)创建注释,强制实现类的构造函数的特定参数列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24326066/

相关文章:

java - Criteriabuilder 在两列上相等

java - 为什么我们需要在接口(interface)中指定参数名称?

python - 如何在 SQLAlchemy 模型的构造函数中通过关系存储数据?

java - 给定旋转角度,如何计算圆柱体 "top"圆心?

java - 验证服务器之间的用户请求

go - 基于接口(interface)抽象实现一个 'Stringer'

在构造函数中抛出 C++ bad_alloc

c++ - 在初始化列表之前执行检查

java - Spring Web MVC 安全性花了很长时间才能完成页面加载

typescript - 为什么 typescript 中的 'readonly' 属性不起作用?