Rumah >Java >javaTutorial >Mengapa Saya Tidak Boleh Memanjangkan Kelas Java Enum untuk Menambah Elemen Baharu?
Tidak Dapat Memanjangkan Kelas Enum untuk Menambah Elemen Baharu
Enum Java ialah kelas akhir dan tidak boleh disubkelaskan. Mengubah suai enum sedia ada untuk menambah elemen baharu tidak boleh dilaksanakan. Reka bentuk Java enum memastikan bahawa semua nilai yang mungkin diketahui secara eksplisit pada masa penyusunan.
Pertimbangkan kod berikut:
enum A { a, b, c } enum B extends A { d }
Walaupun nampaknya B memanjangkan A dan menambah elemen baharu d , ini tidak boleh dilakukan di Jawa. Memanjangkan enum dengan nilai baharu akan membawa kepada ketidakkonsistenan, kerana d akan menjadi contoh A dan nilai B yang berbeza.
Selain itu, tujuan enum adalah untuk mentakrifkan set tetap nilai yang diketahui . Memperluas enum dengan elemen baharu akan menjejaskan konsep ini dan memperkenalkan kesamaran untuk pengguna yang hanya biasa dengan nilai enum asal.
Daripada melanjutkan enum, pertimbangkan penyelesaian alternatif yang selaras dengan prinsip ketakbolehubah dan penyusunan Java- keselamatan masa. Contohnya, anda boleh mencipta enum baharu dengan nilai yang dikehendaki atau menggunakan gubahan untuk mencipta kelas yang merangkum enum dan menyediakan kefungsian tambahan mengikut keperluan.
Atas ialah kandungan terperinci Mengapa Saya Tidak Boleh Memanjangkan Kelas Java Enum untuk Menambah Elemen Baharu?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!