Enum<E extends Enum<E>>

时间:2021-09-23 16:59:04   收藏:0   阅读:40

Enum<E extends Enum<E>>

参考:https://segmentfault.com/a/1190000038778953

不理解为什么Enum的泛型要写成<E extends Enum<E>>,看了这篇解读就明白了。


简单地说就是:有一个基类CustomEnum,两个子类ColorWeekDay。两个子类可以同类比较大小(同为Color类型的实例之间比较,同为WeekDay类型的实例之间比较),但不同类(Color类型和WeekDay类型)不应该能比较。

为了达成这个目的,所以基类写成了CustomEnum<E extends CustomEnum<E>>



不过,我测试下来和参考文章有些出入。

我的基类写成CustomEnum<E extends CustomEnum>时,已经能限制 不同类之间不同比较大小 了。

原文:https://www.cnblogs.com/musecho/p/15309810.html

评论(0
© 2014 bubuko.com 版权所有 - 联系我们:wmxa8@hotmail.com
打开技术之扣,分享程序人生!