在Java中实现Annotation是一个坏主意吗?

问题描述 投票:0回答:1

目前我一直在考虑这个问题,但我找不到合适的答案。手头的用例是为特定的自定义注释创建一个实现类,以便在运行时我可以简单地生成它而不是POJO。

例如:

注解:

@interface CustomAnnotation {
    String date();
}

在这个阶段,我需要一个恰好与注释具有相同字段的bean。在这里,我有两个选项可以实现注释并在运行时创建它,也可以创建一个类来传递信息。

A)注释的实现:

public class CustomAnnotationImpl implements CustomAnnotation {

private final String date;

public CustomAnnotationImpl(String date) {
    this.date = date;
}


@Override
public String date() {
    return this.date;
}

@Override
public Class<? extends Annotation> annotationType() {
    return CustomAnnotation.class;
}
}

B)

public class CustomBean {

    private final String date;

    public CustomAnnotationImpl(String date) {
        this.date = date;
    }

    public String getDate() {
        return this.date;
    }
}

还要记住,bean和注释将始终保持同步,这意味着bean实际上将始终是注释的副本。

我的问题是,如果有的话,那些优点和缺点是什么?我问这个是因为我自己没有看过注释的实现。

java annotations
1个回答
0
投票

我不明白你的问题,但看起来其他人已经问过这样的问题了。

© www.soinside.com 2019 - 2024. All rights reserved.