Objek dan class adalah konsep penting dalam pemrograman berorientasi objek. Namun, terkadang sulit untuk membedakan keduanya. Pada artikel ini, kita akan membahas perbedaan antara objek dan class beserta contoh penggunaannya.
Pengertian Objek
Objek adalah instansi dari class. Dalam pemrograman berorientasi objek, kita membuat objek untuk merepresentasikan sesuatu dalam dunia nyata atau dalam sistem yang sedang kita bangun. Objek memiliki atribut dan perilaku yang didefinisikan oleh class. Atribut adalah data yang dimiliki oleh objek sedangkan perilaku adalah tindakan atau fungsi yang dapat dilakukan oleh objek.
Sebagai contoh, dalam sistem perpustakaan, kita dapat membuat objek buku. Objek buku akan memiliki atribut seperti judul, pengarang, penerbit, dan jumlah halaman. Selain itu, objek buku juga memiliki perilaku seperti dipinjam, dikembalikan, dan diberi label terlambat jika telat dikembalikan.
Pengertian Class
Class adalah blueprint atau cetak biru dari objek. Class mendefinisikan atribut dan perilaku yang dimiliki oleh objek. Dalam pemrograman berorientasi objek, kita menggunakan class untuk membuat objek. Class dapat digunakan berulang kali untuk membuat banyak objek yang memiliki karakteristik yang sama.
Sebagai contoh, dalam sistem perpustakaan, kita dapat membuat class buku. Class buku akan mendefinisikan atribut seperti judul, pengarang, penerbit, dan jumlah halaman. Selain itu, class buku juga akan mendefinisikan perilaku seperti dipinjam, dikembalikan, dan diberi label terlambat jika telat dikembalikan.
Perbedaan Antara Objek dan Class
Berdasarkan pengertian objek dan class di atas, dapat kita tarik kesimpulan bahwa perbedaan antara objek dan class adalah sebagai berikut:
1. Objek adalah instansi dari class sedangkan class adalah blueprint dari objek.
2. Objek memiliki atribut dan perilaku yang didefinisikan oleh class sedangkan class hanya mendefinisikan atribut dan perilaku yang dimiliki oleh objek.
3. Objek dapat digunakan untuk merepresentasikan sesuatu dalam dunia nyata atau dalam sistem yang sedang kita bangun sedangkan class hanya digunakan untuk membuat objek.
Contoh Penggunaan Objek dan Class
Untuk lebih memahami perbedaan antara objek dan class, mari kita lihat contoh penggunaannya dalam bahasa pemrograman Java.
Kita akan membuat sebuah program sederhana untuk merepresentasikan buku dalam perpustakaan. Pertama-tama, kita akan membuat class Book:
public class Book {private String title;private String author;private String publisher;private int numberOfPages;public Book(String title, String author, String publisher, int numberOfPages) {this.title = title;this.author = author;this.publisher = publisher;this.numberOfPages = numberOfPages;}public String getTitle() {return title;}public String getAuthor() {return author;}public String getPublisher() {return publisher;}public int getNumberOfPages() {return numberOfPages;}}
Pada kode di atas, kita membuat class Book dengan atribut title, author, publisher, dan numberOfPages. Kita juga membuat constructor untuk menginisialisasi nilai atribut dan getter untuk mengambil nilai atribut.
Selanjutnya, kita akan membuat objek dari class Book:
Book buku1 = new Book("Java Programming", "John Doe", "ABC Publications", 500);Book buku2 = new Book("Object-Oriented Programming", "Jane Smith", "XYZ Publications", 400);
Pada kode di atas, kita membuat dua objek buku1 dan buku2 dengan menggunakan class Book. Objek buku1 dan buku2 memiliki atribut yang berbeda namun memiliki perilaku yang sama.
Kesimpulan
Dalam pemrograman berorientasi objek, objek dan class adalah konsep yang penting. Objek adalah instansi dari class sedangkan class adalah blueprint atau cetak biru dari objek. Objek memiliki atribut dan perilaku yang didefinisikan oleh class sedangkan class hanya mendefinisikan atribut dan perilaku yang dimiliki oleh objek. Objek dapat digunakan untuk merepresentasikan sesuatu dalam dunia nyata atau dalam sistem yang sedang kita bangun sedangkan class hanya digunakan untuk membuat objek.
Dengan memahami perbedaan antara objek dan class, kita dapat membuat program yang lebih efisien dan mudah dipelihara. Selain itu, pemahaman yang baik tentang objek dan class juga dapat membantu kita untuk memahami konsep-konsep lain dalam pemrograman berorientasi objek seperti inheritance, polymorphism, dan encapsulation.