Bisakah kelas abstrak Java memiliki konstruktor?
Bisakah kelas abstrak Java memiliki konstruktor?

Video: Bisakah kelas abstrak Java memiliki konstruktor?

Video: Bisakah kelas abstrak Java memiliki konstruktor?
Video: #26 Java - Abstract Class 2024, April
Anonim

Ya, dan kelas abstrak dapat memiliki A konstruktor di dalam Jawa . Anda bisa baik secara eksplisit memberikan konstruktor ke kelas abstrak atau jika tidak, kompiler akan tambahkan default konstruktor tidak ada argumen di kelas abstrak . Ini benar untuk semua kelas dan itu juga berlaku untuk kelas abstrak.

Akibatnya, dapatkah konstruktor menjadi abstrak di Jawa?

Anda bisa tidak punya konstruktor abstrak , sebagai abstrak berarti Anda perlu menyediakan implementasi untuk itu di beberapa titik waktu di subkelas Anda. Tapi Anda tidak bisa menimpa konstruktor . Di sana akan tidak ada gunanya memiliki konstruktor abstrak : Anda akan selalu panggil konstruktor dari kelas anak dan bukan dari kelas dasar.

Demikian pula, bagaimana Anda memanggil konstruktor kelas abstrak? Anda dapat menentukan konstruktor dalam sebuah kelas abstrak , tetapi Anda tidak dapat membuat objek itu. Namun, sub- kelas bisa (dan harus) panggilan salah satu dari konstruktor didefinisikan dalam abstrak induk kelas . kamu tidak bisa panggilan NS konstruktor kelas abstrak dengan kelas ekspresi pembuatan instance, mis.

Demikian juga, orang bertanya, mengapa kelas abstrak memiliki konstruktor?

A konstruktor di Java sebenarnya tidak "membangun" objek, ini digunakan untuk menginisialisasi bidang. Bayangkan bahwa Anda kelas abstrak memiliki bidang x dan y, dan Anda selalu ingin mereka diinisialisasi dengan cara tertentu, apa pun subkelas konkret yang akhirnya dibuat.

Bisakah kelas abstrak memiliki objek di Jawa?

Karena ini abstrak dan obyek adalah beton. Tidak, desainer tidak menyediakan cara. Karena kelas abstrak adalah tidak lengkap kelas (tidak lengkap dalam arti mengandung abstrak metode tanpa badan dan keluaran) kami tidak dapat membuat instance atau obyek ; cara yang sama yang Anda katakan untuk sebuah antarmuka.

Direkomendasikan: