class dan object pada java
1.
Class dan Objek pada Java
Kelas merupakan salah satu konsep fundamental
pemrograman berorientasi objek. Kelas dapat diilustrasikan sebagai suatu cetak
biru (blue print) atau prototipe yang digunakn untuk menciptakan objek.
Definisi Kelas
Definisi kelas terdiri atas dua komponen, yaitu
deklarasi kelas dan body kelas. Deklarasi kelas adalah baris pertama di suatu
kelas, dan minimal mendeklarasikan nama kelas. Sementara itu, body
dideklarasikan setelah nama kelas dan berada diantara kurung kurawal.
//deklarasi kelas
Public class ContohKelas {
//body kelas
}
Pada Java, nama kelas sekaligus merepresentasikan
nama file kode program dan sifatnya casesensitive.
Objek adalah entitas dasar saat runtime. Pada saat
kode program dieksekusi, objek berinteraksi satu sama lain tanpa harus
mengetahui detil data atau kodenya. Interaksi antara objek ini dilakukan
menggunakan suatu message.
Pada pemrograman berbasis objek, objek dijadikan
sebagai komponen utama dalam program, objek menggabungkan data dan fungsi
sebagai satu kesatuan. Dalam Pemrograman berbasis objek terdapat dua istilah
yang sangat terkenal yaitu class dan objek. Pengertiannya adalah sebagai
berikut class adalah cetak biru dari sebuah objek, jadi kita dapat membuat
banyak objek dari sebuah class, atau kita dapat analogikan, class itu adalah cetakan
puding, sedangkan objek adalah puding. Contoh sebuah class adalah motor. Class
motor memiliki data merk, warna, tahun pembuatan dan juga memiliki metode
seperti menghidupkan mesin, kecepatan dsb.
Jadi jika ada motor Bowo, motor Raga dan motor Loan
maka itu adalah sebuah objek dari class motor. Pada pemrograman java, cara
untuk menciptakan sebuah objek dari suatu class adalah dengan cara sebagai
berikut :
<nama class> <nama objek>=new <nama
konstruktor>
Misal:
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 ().
Contoh :
Instansiasi Class
Untuk membuat sebuah objek atau sebuah instance
pada sebuah class. Kita menggunakan operator new. Sebagai contoh, jika
anda ingin membuat instance dari class string, kita menggunakan kode berikut :
String str2 = new String(“Hello world!”);
Ini juga sama dengan,
String str2 = "Hello";
Menentukan Class dari sebuah Object
Jika kita ingin mengetahui class dari sebuah obyek
dapat dilakukan dengan cara :
1. Method getClass() mengembalikan sebuah
obyek Class (dimana Class itu sendiri merupakan sebuah class) yang memilki
sebuah method getName(). Selanjutnya getName() akan mengembalikan sebuah string
yang mewakili nama class.
Sebagai contoh,
String name = key.getClass().getName();
2. Operator InstanceOf
InstanceOf memiliki dua operand: obyek pada sebelah
kiri dan nama class pada sebelah kanan. Pernyataan ini mengembalikan nilai true
atau false tergantung pada benar/salah obyek adalah sebuah instance dari
penamaan class atau beberapa subclass milik class tersebut. Sebagai contoh,
boolean ex1 = "Texas" instanceof String;
// true
Object pt = new Point(10, 10);
boolean ex2 = pt instanceof String; // false
Method pada Java
Metode adalah sekumpulan statement program yang
disatukan menjadi sebuah subprogram atau fungsi, diawali dengan tanda “{“
diakhiri dengan tanda “}”. Ada 2 macam metode dan 1 metode pengendali, yaitu:
- Metode
kelas : Metode ini dapat dieksekusi walaupun tidak terdapat objek dalam
kelas tersebut. Seperti variabel kelas, metode kelas juga dideklarasikan menggunkan
keyword static.
- Metode
objek : Metode ini hanya dapat dieksekusi sehubungan dengan objek tertentu.
- Metode
main() : Metode ini digunakan pada saat aplikasi Java dimulai, menggunakan
keyword static. Sebelum aplikasi mulai dieksekusi, diperlukan metode
walaupun tanpa objek.
Metode
adalah suatu blok dari program yang berisi kode dengan nama dan properti
yang dapat digunakan kembali. Metode dapat
mempunyai nilai balik atau tidak, penjelasan
beserta contohnya adalah sebagai berikut:
Metode tidak membalikkan nilai
Jika diberi awalan dengan kata void maka metode
tersebut tidak memberi nilai balik.
contoh:
Metode membalikkan nilai
Jenis kedua adalah jika metode diberi awalan sebuah
tipe data maka metode tersebut akan
memberi nilai balik data yang bertipedata sama
dengan metode tersebut.
contoh :
Selain dua jenis diatas metode juga ada yang diberi
parameter
contoh :
Karakteristik dari
Method
antara lain :
Berikut adalah karakteristik dari method :
1. Dapat mengembalikan satu nilai atau tidak sama
sekali
2. Dapat diterima beberapa parameter yang
dibutuhkan atau tidak ada parameter sama sekali.
3. Setelah method telah selesai dieksekusi, dia
akan kembali pada method yang memanggilnya.
Memanggil Instance dan
memberikan Variabel dari Method
Sekarang, untuk mengilustrasikan bagaimana
memanggil method, mari kita menggunakan class string sebagai contoh. Anda dapat
menggunakan the dokumentasi dari Java API untuk melihat semua method yang
tersedia dalam class string. Selanjutnya, kita akan membuat method, kita sendiri.
Tapi untuk saat ini, mari terlebih dahulu kita gunakan method yang sudah
disediakan oleh Java.
Untuk memanggil sebuah instance method, kita dapat
menuliskan :
nameOfObject.nameOfMethod(
parameters );
mari kita mengambil dua contoh method yang ditemukan dalam class String.
Contoh program seperti
dibawah ini :
String str1 = "Hello";
char x = str2.charAt(0);
String str2 = "hello";
boolean
result = str1.equalsIgnoreCase( str1 );
Pemberian Variabel Dalam
Method
Pada contoh kita sebelumnya , kita sudah pernah
mecoba melewati variabel pada method. Walaupun kita belumdapat membedakan
antara perbedaan tipe variabel yang diberikan (passing) ke method dalam
Java. Ada dua tipe data variabel passing pada method, yang pertama
adalah pass-by-value dan yang kedua adalah pass-by-reference.
Pass-by-Value
Ketika pass-by-values terjadi, method membuat
sebuah salinan dari nilai variable yang dikirimkan ke method. Walaupun
demikian, method tidak dapat secara langsung memodifikasi nilai variabel
pengirimnya meskipun parameter salinannya sudah dimodifikasi
nilainya di dalam method.
Contoh :
Pada contoh diatas, kita
memanggil method tes dan melewatkan nilai variabel i sebagai parameter. Nilai
pada i disalinkan ke variable j pada method. Pada kondisi ini variabel jadalah
merupakan variabel pengganti pada method tes, jika nilai j berubah maka nilai variabel
i yang terletak pada main tidak akan ikut berubah walaupun awalnya variabel j merupakan
salinan dari variabel i.
Pass-by-reference
Ketika sebuah pass-by-reference terjadi, alamat
memori dari nilai pada sebuah variable dilewatkan pada saat pemanggilan method.
Hal ini berarti bahwa method menyalin alamat memori dari variabel yang
dilewatkan pada method. Ini tidak seperti pada pass-by-value, method dapat
memodifikasi variabel asli dengan menggunakan alamat memori tersebut, meskipun
berbeda nama variabel yang digunakan dalam method dengan variabel aslinya, kedua
variabel ini menunjukkan lokasi dari data yang sama.
contoh :
Memanggil Method Static
Method Static adalah method yang dapat dipakai
tanpa harus menginisialisasi suatu class (maksudnya tanpa menggunakan variabel
terlebih dahulu). Method static hanya dimiliki oleh class dan tidak dapat
digunakan oleh instance (atau objek) dari suatu class. Method static dibedakan
dari method yang dapat instance di dalam suatu class oleh kata kunci static.
Untuk memanggil method static, ketik :
Classname.staticMethodName(params);
Contoh dari static method yang digunakan :
System.out.println(“Hello world”);
int i = Integer.parseInt(“10”);
String hexEquivalent = Integer.toHexString( 10 );
Konstruktor
Konstruktor adalah suatu metode yang dapat
digunakan untuk memberi nilai awal pada saat objek diciptakan. Konstruktor akan
dipanggil secara otomatis begitu objek diciptakan. Konstruktor memiliki ciri :
a. namanya sama dengan nama kelas
b. Tidak mengembalikan nilai ( dan juga tidak boleh
ada kata void didepannya)
Jika constructor tidak didefinisikan, Java
memberikan constructor dengan nama constructor_default. Constructor default
tidak melakukan apa-apa, namun semua variabel yang diinisiallisasi dianggap sebagai
berikut:
- Variabel
numerik diset ke 0
- String
diset ke null
- Variabel
boolean di set ke false
Constructor tidak memiliki tipe hasil, walaupun
constructor bisa public, private, atau protected. Sebagian constructor bersifat
public.
contoh :
Jika konstruktor dipanggil dari kelas turunan, maka
caranya adalah dengan menuliskan kata super(); pada class turunan. Untuk
penurunan sifat akan dibahas pada pertemuan selanjutnya Konstruktor juga ada
yang diberi parameter
contoh :
konstrk(String a){
System.out.println(“INI
KONSTRUKTOR”);}
Comments
Post a Comment