标签:java annotations
是否可以仅将注释限制为List?
所以,假设我有两个注释:
(1) Foo.class
(2) Bar.class
声明List时,我只想允许包含注释,但其他一切都会导致编译错误:
List<Something> list = new ArrayList<Something>();
list.add(Foo.class);
list.add(Bar.class);
list.add(String.class); // bad
如果甚至可以实现上述目的,那么可以将其限制为注释类型吗?我的意思是只允许以某种方式分组的注释.例如,如果我有以下注释:
(1) Shark.class
(2) GoldFish.class
(3) Lion.class
我只想允许生活在水中的注释.因此,将Lion.class添加到List将导致编译错误,因为他喜欢土地.
解决方法:
我不确定我是否理解你的问题,但我想你需要这个:
List <Class <? extends Annotation>> x
= new ArrayList <Class <? extends Annotation>> ();
关于第二部分:我猜不是,因为注释接口不能相互扩展.
标签:java,annotations 来源: https://codeday.me/bug/20190827/1740184.html
本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享; 2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关; 3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关; 4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除; 5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。