Perbedaan Antara Kelas dan Antarmuka

Daftar Isi:

Perbedaan Antara Kelas dan Antarmuka
Perbedaan Antara Kelas dan Antarmuka

Video: Perbedaan Antara Kelas dan Antarmuka

Video: Perbedaan Antara Kelas dan Antarmuka
Video: Belajar Java [OOP] - 26 - Abstract Class 2024, November
Anonim

Perbedaan Kunci – Kelas vs Antarmuka

Pemrograman Berorientasi Objek (OOP) adalah paradigma umum dalam pengembangan perangkat lunak. Ini membantu untuk membawa skenario dunia nyata ke pemrograman menggunakan kelas dan objek. Kelas adalah cetak biru untuk membuat objek. Pemrogram dapat membuat kelas dengan properti dan metode. Seorang siswa dan guru adalah objek. Membuat objek dikenal sebagai instantiation. OOP juga menggunakan antarmuka. Antarmuka dan kelas mungkin tampak serupa, tetapi mereka memiliki perbedaan. Artikel ini membahas perbedaan antara kelas dan antarmuka. Perbedaan utama antara kelas dan antarmuka adalah bahwa kelas adalah tipe referensi yang merupakan cetak biru untuk membuat instance objek sedangkan antarmuka adalah tipe referensi yang tidak dapat digunakan untuk membuat instance objek.

Apa itu Kelas?

Dalam OOP, semuanya dianggap sebagai objek. Tidak mungkin membuat objek tanpa kelas. Kelas adalah cetak biru untuk membuat objek. Saat membangun rumah, arsitek menggambar denahnya. Rencananya mirip dengan kelas. Rumah itu mirip dengan objeknya. Kelas adalah rencana untuk membangun sebuah objek. Objek adalah apa yang dibuat menggunakan kelas.

Kelas berisi properti dan metode. Seorang siswa dapat memiliki properti seperti nama, kelas, nomor indeks. Seorang siswa dapat memiliki metode seperti membaca, berjalan, belajar. Kelas dibuat dengan properti dan metode yang diperlukan.

Sintaks untuk membuat kelas dalam banyak bahasa pemrograman adalah sebagai berikut. Itu dibuat menggunakan kelas kata kunci.

kelas_nama_kelas {

// properti

//metode

}

Bahasa pemrograman seperti C dan Java mengikuti sintaks yang sama untuk membuat objek menggunakan kelas. Asumsikan nama kelasnya adalah Siswa.

Mahasiswa s1=Mahasiswa 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 menjelaskan aksesibilitas dan visibilitas anggota tersebut ke kelas lain. Anggota kelas dapat memiliki penentu akses seperti publik, pribadi, dan dilindungi. Anggota publik dapat diakses oleh kelas lain. Anggota pribadi hanya dapat diakses oleh kelas. Anggota yang dilindungi dapat diakses di dalam kelas dan subkelas yang relevan.

Apa itu Antarmuka?

Abstraksi adalah pilar pemrograman Berorientasi Objek. Ini 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.

Bila ada dua kelas abstrak, metode yang dideklarasikan dalam 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.

Interfaces hanya berisi deklarasi metode. Tidak ada metode pelaksanaan. Juga, antarmuka tidak dapat digunakan untuk membuat objek. Mereka digunakan untuk mendukung banyak pewarisan dan untuk mengamankan kode.

Sintaks Antarmuka adalah sebagai berikut. Antarmuka menggunakan kata kunci “antarmuka”.

interface interface_name{

type method1(parameter_list);

type method2(parameter_list);

}

Menurut di atas, antarmuka hanya memiliki deklarasi. Tidak ada definisi. Jadi, antarmuka tidak dapat membuat instance objek. Itu hanya memberikan pandangan abstrak tentang apa antarmuka itu. Metode yang dideklarasikan dalam antarmuka dapat diimplementasikan oleh satu atau banyak kelas. Sebuah kelas menggunakan kata kunci “implement” untuk mengimplementasikan sebuah interface. Lihat contoh di bawah ini yang ditulis menggunakan Java.

Perbedaan Antara Kelas dan Antarmuka
Perbedaan Antara Kelas dan Antarmuka
Perbedaan Antara Kelas dan Antarmuka
Perbedaan Antara Kelas dan Antarmuka

Gambar 01: Program menggunakan Antarmuka

Menurut program di atas, A dan B adalah antarmuka. Antarmuka A memiliki deklarasi metode yang merupakan sum(). Antarmuka B memiliki deklarasi metode sub(). Kelas C mengimplementasikan kedua antarmuka yaitu A dan B. Oleh karena itu, kelas C mendefinisikan metode sum() dan sub(). Setelah membuat objek tipe C, dimungkinkan untuk memanggil kedua metode sum() dan sub().

Metode yang dideklarasikan di dalam antarmuka harus selalu bersifat publik karena kelas pelaksana mendefinisikannya. Sebuah antarmuka juga dapat mewarisi dari antarmuka lain.

Apa Persamaan Antara Kelas dan Antarmuka?

  • Keduanya adalah tipe referensi.
  • Keduanya berhubungan dengan Pemrograman Berorientasi Objek.

Apa Perbedaan Antara Kelas dan Antarmuka?

Kelas vs Antarmuka

Kelas adalah tipe referensi yang merupakan cetak biru untuk membuat objek. Antarmuka adalah tipe referensi yang tidak dapat dipakai.
Instansiasi Objek
Kelas digunakan untuk membuat instance objek. Antarmuka tidak dapat dipakai karena metode tidak dapat melakukan tindakan apa pun.
Konstruktor
Sebuah kelas berisi konstruktor, untuk menginisialisasi variabel. Antarmuka tidak mengandung konstruktor karena hampir tidak ada variabel untuk diinisialisasi.
Kata Kunci
Kelas A menggunakan kata kunci “kelas”. Antarmuka menggunakan kata kunci "antarmuka".
Access Specifier
Anggota kelas dapat menjadi pribadi, publik, dan terlindungi. Anggota antarmuka harus selalu publik karena kelas pelaksana mendefinisikannya.

Ringkasan – Kelas vs Antarmuka

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 instance objek dan antarmuka adalah tipe referensi yang tidak dapat digunakan untuk membuat instance objek. Sebuah class dapat mengimplementasikan banyak interface. Tapi itu hanya bisa memperpanjang satu superclass. Dalam antarmuka dapat mewarisi banyak antarmuka tetapi tidak mungkin ada implementasi. Keduanya memiliki kepentingan mereka. Pemrogram dapat menggunakannya sesuai dengan pengembangan perangkat lunak.

Unduh Kelas PDF vs Antarmuka

Anda dapat mengunduh versi PDF dari artikel ini dan menggunakannya untuk tujuan offline sesuai catatan kutipan. Silakan unduh versi PDF di sini Perbedaan Antara Kelas dan Antarmuka

Direkomendasikan: