Kelas adalah inti dari pemrograman berorientasi objek (OOP). Ini seperti cetak biru untuk membuat objek yang menyediakan nilai awal untuk variabel anggota dan fungsi anggota. Ini adalah blok bangunan dasar OOP yang mendefinisikan sifat objek masa depan. Yang paling penting tentang sebuah kelas adalah bahwa ia mendefinisikan tipe data baru dan setelah didefinisikan, dapat digunakan untuk membuat objek dari tipe itu. Jadi sudah cukup untuk mengatakan kelas adalah template untuk objek, dan objek sebenarnya adalah turunan dari kelas. Ini digunakan untuk membuat dan mengelola objek baru dan mendukung warisan, yang merupakan salah satu konsep inti dari bahasa pemrograman berorientasi objek seperti Java. Singkatnya, kelas mengatur informasi tentang tipe data sehingga dapat menggunakan kembali elemen ketika membuat beberapa contoh tipe data tersebut. Data atau variabel yang didefinisikan dalam suatu kelas disebut variabel instan.
Konstruktor adalah fungsi anggota khusus dari suatu kelas yang dipanggil ketika instance dari objek dibuat. Kadang-kadang bisa sulit untuk menginisialisasi semua variabel dalam kelas setiap kali instance dibuat. Karena persyaratan untuk inisialisasi adalah umum dalam pemrograman berorientasi objek, ini memungkinkan objek untuk menginisialisasi secara otomatis ketika mereka dibuat. Proses inisialisasi otomatis ini dilakukan melalui penggunaan konstruktor. Alasan mengapa ini disebut spesial adalah karena metode instance biasanya memiliki nama yang sama dengan kelas. Ini menginisialisasi objek segera setelah penciptaan dan dapat digunakan untuk mengatur nilai-nilai anggota suatu objek. Konstruktor secara sintaksis mirip dengan metode dalam pemrograman berorientasi objek dan metode adalah prosedur yang terkait dengan kelas dan termasuk dalam objek apa pun dari kelas itu. Singkatnya, sebuah konstruktor disebut setiap kali objek kelas dibuat. Yang paling penting tentang konstruktor adalah bahwa mereka tidak memiliki Tipe Pengembalian, bahkan tidak batal.
Sebuah destructor sepenuhnya merupakan konsep yang berbeda; itu adalah metode khusus yang dipanggil ketika instance kelas dihapus dari memori. Destruktor disebut secara otomatis ketika suatu objek tidak lagi dibutuhkan atau akan menghilang atau dilepaskan secara eksplisit. Tujuan utama dari destructor adalah untuk menyingkirkan sumber daya yang digunakan objek selama daur hidupnya. Ini memberi objek kesempatan terakhir untuk membebaskan memori apa pun yang dialokasikan sehingga akan ada cukup ruang pada tumpukan untuk menyimpan objek baru untuk menjalankan program secara efisien. Destruktor sering digunakan bersama dengan konstruktor, kecuali mereka digunakan untuk menghancurkan objek yang dibuat menggunakan konstruktor. Idenya adalah de-inisialisasi objek ketika mereka dihapus untuk membebaskan memori untuk objek baru. Seperti konstruktor, destruktor didefinisikan sebagai subrutin dalam definisi kelas dan mereka memiliki nama yang sama dengan nama kelas, kecuali destruktor diawali dengan ~ (tilde) operator. Destructor disebut secara eksplisit dalam C ++, namun, tidak ada destruktor di Jawa.
Baik konstruktor dan destruktor adalah fungsi anggota khusus dari setiap kelas tetapi dengan konsep yang berbeda. Konstruktor digunakan untuk menginisialisasi instance kelas, yang berarti ia dipanggil setiap kali kelas dipakai, sedangkan destruktor adalah kebalikan dari konstruktor yang disebut dalam urutan terbalik dari konstruktor.
Konstruktor dipanggil setiap kali instance kelas baru dibuat. Ini pada dasarnya adalah fungsi anggota kelas yang menginisialisasi objek segera setelah membuat dan mengalokasikan memori untuk itu. Destructor, di sisi lain, dipanggil ketika instance kelas dihapus dari memori yang pada gilirannya de-inisialisasi objek yang dibuat menggunakan konstruktor untuk membebaskan memori untuk objek baru.
Baik konstruktor dan destruktor adalah fungsi anggota khusus kelas dengan nama yang sama dengan nama kelas, kecuali destruktor diawali dengan operator ~ (tilde). Konstruktor tidak lain adalah metode yang tidak memiliki Tipe Pengembalian, bahkan tidak batal, sedangkan destruktor persis kebalikan dari konstruktor.
Baik konstruktor dan destruktor dipanggil secara otomatis setelah penciptaan dan penghapusan. Namun, tidak seperti konstruktor, destruktor tidak dapat kelebihan beban. Overloading adalah konsep pemrograman berorientasi objek yang memungkinkan Anda untuk mendefinisikan dua atau lebih fungsi dengan nama yang sama sehingga Anda dapat memanggil mereka dengan daftar argumen yang berbeda.
Dalam pemrograman berorientasi objek, konstruktor sering menerima argumen yang mereka gunakan untuk mengatur variabel anggota yang diperlukan, sedangkan destruktor tidak menerima argumen apa pun.
Konstruktor memungkinkan objek untuk menginisialisasi beberapa nilainya sebelum digunakan, sedangkan destruktor memungkinkan objek untuk mengeksekusi beberapa bagian dari kode pada saat itu sedang dihancurkan.
Baik konstruktor dan destruktor adalah fungsi anggota khusus kelas dengan nama yang sama dengan nama kelas, kecuali destruktor didahului oleh operator ~ tilde. Sebuah konstruktor tidak lain adalah sebuah metode kecuali itu disebut ketika instance dari sebuah objek dibuat, sedangkan sebuah destructor adalah kebalikan dari konstruktor yang dipanggil ketika instance dari suatu objek dihapus dari memori. Tujuan destruktor adalah untuk menginisialisasi ulang objek yang dibuat menggunakan konstruktor untuk membebaskan ruang memori untuk mengakomodasi objek baru.