Pemrograman Berorientasi Objek (OOP) adalah paradigma umum dalam pengembangan perangkat lunak. Ini membantu membawa skenario dunia nyata ke pemrograman menggunakan kelas dan objek. Kelas adalah cetak biru untuk membuat objek. Programmer dapat membuat kelas dengan properti dan metode. Seorang siswa dan guru adalah objek. Membuat objek dikenal sebagai Instantiasi. OOP juga menggunakan antarmuka. Antarmuka dan kelas mungkin tampak serupa, tetapi mereka memiliki perbedaan. Artikel ini membahas perbedaan antara kelas dan antarmuka. Itu perbedaan utama antara kelas dan antarmuka adalah itu Kelas adalah tipe referensi yang merupakan cetak biru untuk membuat instantiate objek sementara antarmuka adalah jenis referensi yang tidak dapat digunakan untuk membuat instantiate suatu objek.
1. Ikhtisar dan Perbedaan Utama
2. Apa itu kelas
3. Apa itu antarmuka
4. Kesamaan antara kelas dan antarmuka
5. Perbandingan berdampingan - Antarmuka kelas vs dalam bentuk tabel
6. Ringkasan
Di OOP, semuanya dianggap sebagai objek. Tidak mungkin membuat objek tanpa kelas. Kelas adalah cetak biru untuk membuat objek. Saat membangun rumah, arsitek menggambar rencana itu. Rencananya mirip dengan kelas. Rumahnya mirip dengan objek. Kelas adalah rencana untuk membangun objek. Objek adalah apa yang dibuat menggunakan kelas.
Kelas berisi sifat dan metode. Seorang siswa dapat memiliki properti seperti nama, nilai, nomor indeks. Seorang siswa dapat memiliki metode seperti membaca, berjalan, belajar. Kelas dibuat dengan sifat dan metode yang diperlukan.
Sintaks untuk membuat kelas dalam banyak bahasa pemrograman adalah sebagai berikut. Itu dibuat menggunakan kelas kata kunci.
class class_name
// properti
// metode
Bahasa pemrograman seperti C# dan Java Ikuti sintaks serupa untuk membuat objek menggunakan kelas. Asumsikan bahwa nama kelasnya adalah pelajar.
Siswa S1 = Siswa Baru ();
S1 ini adalah objeknya. Kata kunci "baru" digunakan untuk mengalokasikan memori untuk properti. Kelas juga memiliki konstruktor untuk menginisialisasi properti atau variabel.
Anggota kelas seperti properti dan metode memiliki pengubah akses. Penentu akses menggambarkan aksesibilitas dan visibilitas anggota tersebut ke kelas lain. Anggota kelas dapat memiliki penentu akses seperti publik, pribadi dan terlindungi. Anggota publik dapat diakses oleh kelas lain. Anggota pribadi hanya dapat diakses ke kelas. Anggota yang dilindungi dapat diakses di dalam kelas dan subkelas yang relevan.
Abstraksi adalah pilar pemrograman berorientasi objek. Itu adalah untuk menyembunyikan detail implementasi dan untuk menampilkan fungsionalitas kepada pengguna. Abstraksi dicapai dengan menggunakan kelas dan antarmuka abstrak. Metode abstrak tidak memiliki implementasi. Kelas yang berisi setidaknya satu metode abstrak disebut kelas abstrak.
Ketika ada dua kelas abstrak, metode yang dinyatakan dalam kelas -kelas tersebut harus diimplementasikan. Kelas baru digunakan untuk mengimplementasikan metode tersebut. Jika kedua kelas memiliki metode yang sama, itu mungkin menyebabkan masalah ambiguitas. Oleh karena itu, bahasa pemrograman seperti Java dan C# memiliki antarmuka.
Antarmuka hanya berisi deklarasi metode. Tidak ada metode implementasi. Juga, antarmuka tidak dapat digunakan untuk membuat objek. Mereka digunakan untuk mendukung beberapa warisan dan untuk mengamankan kode.
Sintaks antarmuka adalah sebagai berikut. Antarmuka Gunakan kata kunci "antarmuka".
antarmuka antarmuka_name
type method1 (parameter_list);
type method2 (parameter_list);
Menurut di atas, antarmuka hanya memiliki deklarasi. Tidak ada definisi. Jadi, antarmuka tidak dapat membuat objek instantiasi. Itu hanya memberikan pandangan abstrak tentang apa antarmuka itu. Metode yang dinyatakan dalam antarmuka dapat diimplementasikan oleh satu atau banyak kelas. Kelas menggunakan kata kunci "implement" untuk mengimplementasikan antarmuka. Lihat contoh di bawah yang ditulis menggunakan java.
Gambar 01: Program Menggunakan Antarmuka
Menurut program di atas, A dan B adalah antarmuka. Antarmuka A memiliki deklarasi metode yang merupakan jumlah (). Antarmuka B memiliki metode deklarasi metode sub (). Kelas C mengimplementasikan kedua antarmuka yang merupakan A dan B. Oleh karena itu, kelas C mendefinisikan metode jumlah () dan sub (). Setelah membuat objek Tipe C, dimungkinkan untuk memanggil kedua metode SUM () dan Sub ().
Metode yang dinyatakan di dalam antarmuka harus selalu bersifat publik karena kelas pelaksanaan mendefinisikannya. Antarmuka juga dapat mewarisi dari antarmuka lain.
Antarmuka kelas vs | |
Kelas adalah jenis referensi yang merupakan cetak biru untuk membuat objek. | Antarmuka adalah jenis referensi yang tidak dapat dipakai. |
Instantiasi objek | |
Kelas digunakan untuk membuat instansi suatu objek. | Antarmuka tidak dapat dipakai karena metode tersebut tidak dapat melakukan tindakan apa pun. |
Konstruktor | |
Kelas berisi konstruktor, untuk menginisialisasi variabel. | Antarmuka tidak mengandung konstruktor karena hampir tidak ada variabel untuk diinisialisasi. |
Kata kunci | |
Kelas menggunakan kata kunci "kelas". | Antarmuka menggunakan kata kunci "antarmuka". |
Access Specifier | |
Anggota kelas dapat bersifat pribadi, publik dan terlindungi. | Anggota antarmuka harus selalu publik karena kelas pelaksanaan mendefinisikannya. |
Kelas dan antarmuka banyak digunakan dalam pemrograman berorientasi objek. Perbedaan antara kelas dan antarmuka adalah bahwa kelas adalah tipe referensi yang merupakan cetak biru untuk membuat instantiate objek dan antarmuka adalah tipe referensi yang tidak dapat digunakan untuk membuat instantiate objek. Kelas dapat mengimplementasikan banyak antarmuka. Tapi itu hanya bisa memperpanjang satu superclass. Dalam antarmuka dapat mewarisi banyak antarmuka tetapi tidak mungkin ada implementasi. Keduanya memiliki kepentingannya. Programmer dapat menggunakannya sesuai dengan perangkat lunak pengembangan.
Anda dapat mengunduh versi PDF artikel ini dan menggunakannya untuk tujuan offline sesuai catatan kutipan. Silakan unduh versi pdf di sini perbedaan antara kelas dan antarmuka
1.TutorialSpoint.com. “Objek dan kelas Java.", Inti nya. Tersedia disini
2.navinreddy20. Antarmuka di Java dengan contoh, Java oleh Navin Reddy, 11 Des. 2012. Tersedia disini