java-查找集合中所有对象的通用类

我有一个功能:

void foo(Collection<? extends Baz> messages) {

如何确定集合中所有元素的最派生通用子类?

可能所有元素都扩展了Bar,Bar扩展了Baz.有些可能扩展Fuz,扩展Bar,但不是全部.在这种情况下,最派生的通用子类仍然是Bar.

最佳答案

迭代集合,并将每个元素转换为其层次结构中的类列表(例如Fuz-Bar-Baz-Object).

对于每个后续元素,classList.retain()都是相同操作的结果.

取结果列表的第一个元素.

发布了549 篇原创文章 · 获赞 0 · 访问量 2414

猜你喜欢

转载自blog.csdn.net/weixin_44109689/article/details/103943754