Object adalah instance dari class. Jika class secara umum merepresentasikan
(template) sebuah object, sebuah instance adalah representasi nyata dari class itu
sendiri.
Contoh : Dari class Fruit kita dapat membuat object Mangga, Pisang, Apel dan lainlain.
Membuat object
Untuk membuat object, kita menggunakan perintah new dengan sebuah nama class
yang akan dibuat sebagai instance dari class tersebut.
String str = new String();
Random r = new Random();
Pegawai p2 = new PEgawai();
Date hari = new Date();
hari adalah object reference dari class Date yang akan digunakan untuk mengakses
class Date.
Sedangkan operator new adalah operator yang akan menghasilkan hari sebagai
reference ke instance dari class Date().
Attributes merupakan nilai data yang terdapat pada suatu object yang berasal dari
class. Attributes merepresentasikan karakteristik dari suatu object.
Contoh : pada Class Fruit terdapat attribute : warna, berat pada object mangga :
warna berisi kuning dan berat misalkan 0.25 kg pada object apel : warna berisi
merah dan berat misalkan 0.30 kg
Method merupakan suatu operasi berupa fungsi-fungsi yang dapat dikerjakan oleh
suatu object. Method didefinisikan pada class akan tetapi dipanggil melalui object.
Contoh : pada object mangga : terdapat method ambilRasa , kupasKulit dan lain-lain.
METHOD
Metode menentukan perilaku objek, yakni apa yang terjadi ketika objek itu dibuat serta
berbagai operasi yang dapat dilakukan objek sepanjang hidupnya.
Metode memiliki 4 (empat) bagian dasar :
1. Nama metode
2. Tipe Objek atau tipe primitive yang dikembalikan metode.
3. Daftar parameter.
4. Badan atau isi metode.
Tiga bagian pertama mengindikasikan informasi penting tentang metode itu sendiri.
Dengan kata lain, nama metode tersebut=metode lain dalam program. Dalam java kita
dapat memiliki metode-metode berbeda yang memiliki nama sama tetapi berbeda tipe
kembalian atau daftar argumennya, sehingga bagian-bagian definisi metode ini menjadi
penting. Ini disebut overloading metode.
Untuk menjalankan program yang memiliki sifat polymorphism tersebut, diperlukan
suatu kemampuan overloading, yaitu suatu kemampuan untuk menentukan fungsi
yang mana yang harus digunakan atau dijalankan jika terdapat nama fungsi yang sama.
Polimorfisme bisa diartikan seperti kemampuan suatu variable untuk mengubah
perangai sesuai dengan objek hasil instansiasi yang digunakan. Polimorfisme
membiarkan lebih dari 1 objek dari sub class sub class dan diperlakukan sebagai
objek dari super class tunggal
Jika sudah mengerti, berikan masing-masing 3 contoh attribut untuk class berikut:
a. Mobil
b. Buku
c. Laptop
Selain memiliki attribut, class juga memiliki method. Method adalah operasi yang dapat
dilakukan oleh objek. Dalam bahasa pemrograman lain, method dikenal dengan function
atau procedure. contoh method yang dapat dilakukan oleh objek mahasiswa adalah registrasi,
belajar.
Seperti konsep pemrograman yang lain, fingsi yang pertama kali dipanggil adalah fungsi
main. Dalam Java, konsep tersebut juga berlaku. Sebuah method hanya akan berjalan ketika
method tersebut dipanggil.
pada program diatas, kita belum dapat memasukkan nilai dari setiap attribut yang kita
gunakan, bukan?
Saat ini kita akan mencoba mengubah nilai attribut dari objek yang kita buat.
coba ubah program sebagai berikut!
Constructor
Constructor adalah sebuah method yang dipanggil ketika kita melakukan instansiasi suatu
objek. Constructor biasanya berfungsi untuk memberikan nilai awal pada attribut ketika
objek tersebut dibuat.
a. Default constructor
Coba lihat program yang kalian buat tadi!
Di sana tidak ada method yang sama dengan nama class bukan? Lalu, apakah kesimpulannya,
pada saat instansiasi objek, tidak ada constructor yang dipanggil!
Pada program tersebut, tetap ada constructor yang dipanggil pada waktu instansiasi objek.
Tetapi, karena kita tidak mendefinisikan 1 pun constructor, maka java membuat default
constructor.
Default constructor tidak menggunakan parameter. Jadi, jika methodnya ditulis, kira-kira
seperti ini:
ketika kita belum mendefinisikan constructor, jika Mahasiswa Test.java dijalankan, hasilnya
adalah:
Sekarang, compile dan run program kalian. Apakah kalian menemukan perbedaan dan
memahami kegunaan constructor?
Untuk lebih memahami penggunaan constructor,ubah kembali constructor pada
Mahasiswa.java menjadi :
c. Overloading constructor
Perlu kita ketahui, kita dapat membuat lebih dari satu constructor dalam satu class. Tetapi,
kita tidak bisa membuat lebih dari satu constructor yang benar-benar sama. Harus ada
perbedaan yang menjadi identitas constructor. Perbedaan tersebut dapat terletak pada jumlah
parameter, atau urutan tipe data pada parameter.
tambahkan program berikut pada Mahasiswa.java sehingga kita memiliki 4 constructor:
compile program.
ubah MahasiswaTest.java menjadi:
compile , kemudian run program.
Pada saat dilakukan instansiasi atas objek aku, kamu, dia dan saya, terdapat perbedaan. apa
yang menjadi perbedaan? Bagaimana program dapat mengenali constructor mana yang
dipakai pada class Mahasiswa?
sekarang, tambahkan sebuah constructor pada Mahasiswa.java:
compile program.
Overloading dapat dilakukan pada sebuah class dengan pembeda berupa jumlah tipe data dan
urutan tipe data. Dua buah method dengan nama variabel yang berbeda tidak membedakan
method.
2 komentar:
1.
Balas
2.
Thanks :)
Balas
Arsip Blog
2012 (7)
o Mei (7)
Class dan Objek Dalam JAVA
Abstraction Class dalam Java
Enkapsulation
Inheritance dalam Java
Konsep Dasar Polymorphism dalam Java
Konsep Interface Dalam Pemrograman Java
Abstractions
Mengenai Saya