Rumah  >  Soal Jawab  >  teks badan

Pengaturcaraan - Mengapa Java tidak mempunyai antara muka kaedah statik Adakah terdapat mana-mana bahasa yang mempunyai antara muka kaedah statik?

Saya mahu kaedah statik subkelas turut mematuhi spesifikasi tetap dan menyediakan fungsi yang berbeza, dan
kaedah statik kelas induk menyediakan fungsi yang sama.

Mengapa Java tidak membenarkan kaedah statik menyepadukan kelakuan override dan override dengan kaedah biasa? Saya rasa ia cukup bagus? Hanya kerana ia tidak mengikut logik tertentu?

Tahukah anda bahasa pengaturcaraan yang mempunyai ciri ini.

我想大声告诉你我想大声告诉你2686 hari yang lalu887

membalas semua(2)saya akan balas

  • 漂亮男人

    漂亮男人2017-06-12 09:28:00

    Hanya gunakan singleton dan bukannya statik
    Malah, berorientasikan objek tidak memerlukan statik
    Kotlin dan seumpamanya menyokong ini dengan baik
    Gunakan objek pendamping atau objek tunggal
    Anda boleh membiarkan objek pendamping melaksanakannya antara muka. ,

    https://kotlinlang.org/docs/r...

    interface Factory<T> {
        fun create(): T
    }
    
    
    class MyClass {
        companion object : Factory<MyClass> {
            override fun create(): MyClass = MyClass()
        }
    }

    balas
    0
  • 我想大声告诉你

    我想大声告诉你2017-06-12 09:28:00

    Pertama sekali. Anda perlu memahami kaedah statik dalam java. Pada tahap tertentu, penulisan semula adalah manifestasi polimorfisme, dan kaedah statik di Jawa terikat kepada kelas. Dalam erti kata lain, apabila kelas ini dimuatkan, kaedah statik dalam kelas juga dimuatkan Apakah maksud pewarisan dan penggantian yang anda katakan?

    balas
    0
  • Batalbalas