Effective Java之用接口模拟可伸缩的枚举(三十四)
生活随笔
收集整理的這篇文章主要介紹了
Effective Java之用接口模拟可伸缩的枚举(三十四)
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
在實際工作中,我們常常會遇到這樣的情況:
如果我在一個枚舉類型封裝在一個jar庫里后,其他開發人員如果對該枚舉進行擴展?
畢竟我剛開始定義的枚舉并不是會涵蓋所有的可能!
這樣的情況下,由于我們知道enum雖然沒寫final,但是它是一個真正實現了final的類,所以不支持擴展,那么這種情況下如何擴展枚舉呢?
答案是使用接口去模擬可伸縮的枚舉,也就是說在接口中定義基本的枚舉類型,讓開發者用枚舉去實現這個接口,這也就間接實現了枚舉的伸縮性。話不多說,看代碼:
public interface Type{ }public enum ModuleType implements Type{RESOURCE_MODULE,//..... }如果要擴展的話,其他開發人員可以實現Type接口public enum ExtType implements Type{XXXXX_MODULE,//... }總結
以上是生活随笔為你收集整理的Effective Java之用接口模拟可伸缩的枚举(三十四)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Effective Java之EnumM
- 下一篇: Effective Java之注解优于命