本文介紹了有什么方法可以將記錄與繼承一起使用嗎?的處理方法,對大家解決問題具有一定的參考價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)吧!
問題描述
我有許多使用Lombok的@Data
類,我想遷移所有這些類以使用Java 14中提供的新錄音功能。
我知道這有點早,但這是我正在進行的一項實驗性測試。
這里的主要問題是涉及繼承。我有一個類B,它擴展了一個類A。有什么方法可以將Records與繼承一起使用嗎?
推薦答案
JEP說明:
對記錄的限制
Records不能擴展任何其他類,并且不能聲明與狀態(tài)描述的組件相對應(yīng)的私有最終字段以外的實例字段。聲明的任何其他字段都必須是靜態(tài)的。這些限制確保僅由狀態(tài)描述定義表示形式。
但是,它們可以實現(xiàn)接口并定義實例方法,因此您可以多態(tài)地使用它們。此外,由于它們將繼承默認方法,因此它們確實支持有限形式的繼承。
此時,Java語言規(guī)范未指定記錄結(jié)構(gòu)及其語義。
這篇關(guān)于有什么方法可以將記錄與繼承一起使用嗎?的文章就介紹到這了,希望我們推薦的答案對大家有所幫助,