能否使用注解找到所有被此注解注解的类?

发布于 2022-09-03 11:48:03 字数 787 浏览 12 评论 0

我现在需要将一个类和一个byte绑定在一起 这样他们就能找到彼此(用两个hashmap)
我现在想到的方式是

class A{
    ....
}
class B{
    ....
}
....
HashMap map1=new HashMap();
HashMap map2=new HashMap();
map1.put(A,1)
map2.put(1,A)
map1.put(B,2)
map2.put(2,B)

但是很明显这样写太丑了
如果能通过注解找到类的话就可以

    @record
    class A{
        ....
    }
    @record
    class B{
        ....
    }
    ....
    class map{
    static {
        list= //a way to get all class which be annotation
        for(int i=0;i<list.length();i++){
            map.put(list.get(i),i)
        }
    }
    static byte get(Object k){
        map.get(k)
    }
    }
    
    //用的时候可以
    class A{
        ....
        {
        map.get(this)
        }

    }

注解可以做到这种效果吗?
对于这个问题还有什么更好的方法吗?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

沦落红尘 2022-09-10 11:48:04

然而没有这种办法,注解也是单向映射的,在类和方法中会记录所使用的注解,但在注解中不会记录被谁使用过。

鹤舞 2022-09-10 11:48:04

你遇到了一个别人几乎不会遇到的问题,先想想别人为啥没遇到过,再想想自己如何实现,最后想想有没有别的解决办法。

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文