Artikel berikut menyediakan garis besar untuk Kelas Abstrak di Jawa. Kelas abstrak adalah seperti kelas biasa lain di Jawa. Perbezaan ketara antara kelas abstrak dan biasa ialah mencipta kelas abstrak, kita mesti menggunakan kata kunci 'ABSTRAK'. Ia adalah pemisahan pelaksanaan kelas. Mereka pernah mentakrifkan ciri-ciri yang sangat biasa bagi subkelasnya. Jenis kelas sedemikian dirujuk sebagai kelas Abstrak. Paling penting, kita tidak boleh mencipta objek kelas abstrak.
Mulakan Kursus Pembangunan Perisian Percuma Anda
Pembangunan web, bahasa pengaturcaraan, ujian perisian & lain-lain
Kelas abstrak boleh mengandungi kaedah abstrak dan bukan abstrak. Walau bagaimanapun, mereka tidak boleh mengandungi badan kaedah abstrak yang hanya boleh disediakan oleh subkelas. Jika subkelas tidak melaksanakan kaedah abstrak, maka kita mesti menjadikannya ABSTRAK secara eksplisit. Dalam erti kata lain, jika kelas mengandungi kaedah abstrak, ia mesti mentakrifkan dirinya sebagai ABSTRAK. Kita boleh mengumpulkan beberapa kelas Java menggunakan kelas abstrak, mengoptimumkan kod, menjadikan kod lebih mudah dibaca dan mengurangkan redundansi. Ia juga menyediakan templat untuk kelas akan datang.
Sintaks kelas abstrak adalah seperti berikut:
Contoh berikut diberikan di bawah:
Manusia.java
package com.cont.article; public abstract class Human { public abstract void whatTheylike(); public void doTheysleep() { System.out.println("Yes every human require sleep."); } }
Manusia1.java
package com.cont.article; public class Human1 extends Human { @Override public void whatTheylike() { System.out.println("we like to have icecream."); } }
Manusia2.java
package com.cont.article; public class Human2 extends Human { @Override public void whatTheylike() { System.out.println("we like to have coffee."); } }
TestHuman.java
package com.cont.article; public class TestHuman { public static void main(String[] args) { Human human1 = new Human1(); human1.whatTheylike(); Human human2 = new Human2(); human2.whatTheylike(); human1.doTheysleep(); human2.doTheysleep(); } }
Output:
Dalam contoh di atas, MANUSIA ialah kelas abstrak yang mentakrifkan keperluan biasa, suka dan tidak suka manusia. Terdapat pelbagai jenis manusia yang berbeza suka dan tidak suka. Jadi setiap manusia boleh menyediakan pelaksanaan tertentu yang mereka suka. Itu akan khusus untuk mereka sahaja.
Kelebihan utama kelas abstrak ialah kami mempunyai pelaksanaan kaedah khusus mengikut keperluan, mengurangkan redundansi, meningkatkan kebolehbacaan kod, menyembunyikan pelaksanaan kaedah dan menyediakan abstraksi separa.
Kita boleh mempunyai satu lagi contoh untuk memahami masa untuk menggunakan kelas Abstrak.
Katakan kita mempunyai satu kelas Haiwan. Kita mempunyai pelbagai haiwan di Bumi, dan mereka semua berbeza antara satu sama lain dalam beberapa atau pengertian utama. Namun begitu, ia akan mengandungi semua ciri umum semua.
Kini, kelas Haiwan ini tidak boleh mempunyai kaedah khusus untuk setiap Haiwan. Jadi dengan konsep kelas Abstrak, kita boleh melaksanakan fungsi ini tanpa kod berlebihan.
Semua haiwan mempunyai pelbagai jenis bunyi, tabiat, dsb. Contohnya, anjing, kucing, gajah dan makanan ringan mempunyai bunyi yang berbeza. Jadi untuk ini, kita boleh mempunyai kaedah generik dalam kelas induk yang melaluinya semua subkelas atau kelas anak lain boleh menyediakan pelaksanaan khusus mereka.
Dalam kelas induk, iaitu, Haiwan, kita mempunyai satu kaedah abstrak generik yang dipanggil Bunyi (). Jadi setiap kelas kanak-kanak perlu mengatasi kaedah ini dan menyediakan pelaksanaan khususnya.
Di bawah ialah perbezaan antara Kelas Abstrak dan Antara Muka:
Kelas abstrak digunakan untuk menyediakan abstraksi separa. Kelas abstrak tidak boleh digunakan menggunakan kata kunci BAHARU. Kaedah Abstrak tidak mempunyai badan dan sentiasa berakhir dengan koma bertitik (;). Kelas abstrak mengandungi kaedah abstrak dan bukan abstrak. Subkelas superclass abstrak perlu melaksanakan semua kaedah abstrak; jika ia tidak menyediakan, maka ia perlu mengisytiharkan dirinya sebagai kelas abstrak. Subkelas boleh menjadi abstrak walaupun superclass adalah konkrit. Kelas bukan abstrak tidak boleh mengandungi kaedah abstrak. Juga, kaedah abstrak adalah tidak statik. Oleh itu, kelas abstrak juga mempunyai kaedah abstrak dan konkrit, jadi mereka tidak dapat memberikan abstraksi 100%. Ia adalah satu proses untuk menyembunyikan logik yang kompleks daripada pengguna akhir dan menunjukkan kepada mereka perkhidmatan sahaja.
Sebaliknya, subkelas boleh menjadi abstrak walaupun superclassnya adalah konkrit dan juga boleh digunakan sebagai jenis data. Kelas abstrak mungkin mempunyai medan statik dan kaedah statik. Anda boleh menggunakan ahli statik ini dengan rujukan kelas.
Atas ialah kandungan terperinci Kelas Abstrak di Jawa. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!