JAVA SE

Object Oriented Programming di Java

27-Jun-2009 00:02:17

 

Object Oriented Programming in Java

Jakarta, 20 Januari 2009

19.30 wib.

Copyright © RDP Labs

Mungkin, sekarang Object Oriented Programming sudah tidak asing lagi bagi mahasiswa Teknik Informatika dan sejenisnya. Ini dikarenakan Object Oriented Programming atau yang disingkat OOP sudah menjadi mata kuliah wajib di setiap jurusan Teknik Informatika dan sejenisnya.

Pada kesempatan ini, kita akan membahas tentang class di java. Saya akan memberikan contoh-contoh serta penjelasannya. Tapi, setelah anda menguasainya tolong ajarkan kepada saya('saya belum paham tentang OOP'). OOP sangatlah berbeda dengan pemrograman yang bersifat atau berorientasi prosedural. Di dalam OOP kita harus memeras otak dengan keras untuk memahaminya.

Sudah siap memasuki dunia Object Oriented Programming di Java ? Yakinlah, bahwa semua ini sangat mudah('Bodoh !! Kamu sendiri saja tidak paham, mengatakan ini sangat mudah'). Saya mengasumsikan anda telah menginstall Java dengan baik, yang meliputi set PATH serta CLASSPATH('anda dapat melihat tutorial instalasi java, baik di linux maupun windows di website http://hmif.org').

Class

Java bersifat full objek, yang mengadopsi dari bahasa-bahasa pendahulunya, salah satunya adalah C++. Namun, setiap bahasa pemrograman memiliki karakteristik masing-masing. Di java terdapat istilah 'everything is an object'.

Sebelum memulai, sudahkah anda mengerti cara menulis, kompilasi dan mengeksekusi program java? Jika belum, anda dapat melihat tutorial yang membahas cara menampilkan tulisan 'Hello World' di website http://hmif.org.

Pengertian class di dalam pemrograman berorientasi objek dapat diartikan sebagai design atau cetakan untuk membuat berbagai objek. Objek sendiri dapat dikatakan sebagai instance atau perwujudan dari class.

Kita ambil contoh dalam kehidupan sehari-hari semisal class mobil, objek dari class mobil adalah merk, warna, tahun produksi. Contoh lain lagi adalah class mahasiswa, objek dari class mahasiswa dapat berupa nim, nama, ipk. Sebelum memasuki pembahasan tentang class anda harus memahami bahwa, class yang membentuk sejumlah objek bukan sebaliknya.

Di dalam Java untuk membuat sebuah class harus memiliki ketentuan sebagai berikut :

class namaClass {

property;

property;

metode1( ) { }

metodeN( ) { }

}

Sebelumnya kita telah membuat class pada tutorial menampilkan tulisan Hello World di layar console, yang mendeklarasikan method main sebagai awal eksekusi. Method main ini adalah suatu keharusan jika program kita ingin dieksekusi.

Siapkan diri anda untuk memasuki dunia pemrograman berorientasi objek, terlebih Java adalah bahasa pemrograman yang full objek. Kita akan membuat sebuah class mahasiswa yang memiliki property berupa nama, nim, alamat. Dibawah ini adalah contoh untuk membuat class mahasiswa tersebut :

class Mahasiswa {

String nama; // property nama dengan tipe data String

String nim; // property nim dengan tipe data String

String alamat; // property alamat dengan tipe data String

}

class AksesClass {

public static void main(String[] args) { // awal eksekusi (method main)

Mahasiswa mhs = new Mahasiswa(); // membuat objek dari class Mahasiswa

mhs.nama = “aku”; // mengisikan property nama

mhs.nim = “2004470099”; // mengisikan property nim

mhs.alamat = “Bekasi”; // mengisikan property alamat

System.out.println(“Nama Mahasiswa : “ + mhs.nama); // menampilkan nama

System.out.println(“Nim Mahasiswa : “ + mhs.nim); // menampilkan nim

System.out.println(“Alamat Mahasiswa : “ + mhs.alamat); // menampilkan alamat

}

}

Penjelasan program :

Kita membuat class Mahasiswa, untuk membuat sebuah class harus diawali dengan kata kunci class kemudian diikuti dengan nama class. Di dalam class Mahasiswa kita mendeklarasikan tiga buah property atau variabel instan yaitu nama, nim dan alamat bertipe data String.

Selanjutnya kita mendeklarasikan class yang bernama AksesClass yang mendeklarasikan method main sebagai awal eksekusi. Di dalam class AksesClass kita membuat instance atau objek dengan menggunakan kata kunci new

// mhs adalah variabel yg merujuk ke class Mahasiswa, dengan variabel ini kita // dapatmengakses property yang terdapat di class Mahasiswa

Mahasiswa mhs = new Mahasiswa();

// dengan variabel mhs kita dapat mengkakses property

// nama, melalui operator . (titik) kita mengisikan nilainya

mhs.nama = “aku”;

// menampilkan nama mahasiswa, dengan cara mhs.nama

System.out.println(“Nama Mahasiswa : “ + mhs.nama);

Method

Method dapat diartikan sebagai function ataupun procedure atau bisa juga diartikan sebagai block kode yang akan melakukan fungsi-fungsi khusus. Pendeklarasian method di Java adalah sebagai berikut :

Tipe data primitif / Tipe data class namaMethod(tanpa parameter / parameter) {

Fungsifungsi;

}

Di materi ini juga akan diperkenalkan kata kunci return. Berikut ini contoh program dari sebuah class yang memiliki method.

class Mahasiswa {

int usia;

String nama;

void setNilai(String namaMhs, int usiaMhs) {

nama = namaMhs;

usia = usiaMhs;

}

String cetakData() {

return "Nama : " + nama + " Usia : " + usia; }

}

class AksesClass {

public static void main(String[] args) {

Mahasiswa mhs = new Mahasiswa();

mhs.setNilai("aku", 23);

System.out.println(mhs.cetakData());

}

}

 

Penjelasan program :

Di dalam class Mahasiswa kita mendeklarasikan method setNilai yang memiliki dua parameter untuk mengisikan nilai property nama dan usia. Di dalam class Mahasiswa kita juga mendeklarasikan sebuah method yang bernama cetakData untuk menampilkan nilai dari property nama dan usia, karena bertipe data String yang mengembalikan nilai maka kita harus menggunakan kata kunci return.

Lalu selanjutnya di dalam class AksesClass kita membuat instance atau objek dari class Mahasiswa. Selanjutnya kita mengisikan metode setNilai dengan tipe data String dan integer.

Overloading Method

Yang dimaksud dengan Overloading Method adalah kita boleh mendeklarasikan nama method yang sama di dalam sebuah class, namun harus diperhatikan walaupun nama method boleh sama, tetapi daftar parameter yang dilewatkan haruslah berbeda.

Contoh dibawah ini akan memberikan gambaran tentang Overloading Method :

class Manusia {

String nama;

int usia;

void cetak(String namaManusia) { // method yang akan di-overload

nama = namaManusia;

System.out.println(“Nama : “ + nama);

}

void cetak(int usiaManusia) { // overloading method cetak

usia = usiaManusia;

System.out.println(“Usia : “ + usiaManusia);

}

}

Konstruktor

Pengertian dari konstruktor adalah fungsi yang secara otomatis dieksekusi setiap kali melakukan instance (membuat objek dari suatu class). Jika anda pernah mencoba C++, maka dikenal pula dengan destructor, namun di Java tidak mengenal istilah destructor, tapi jika diperlukan anda bisa menggunakan fungsi yang terdapat di Java sebagai pengganti destructor. Konstruktor sangat mirip dengan method, namun ada hal-hal yang harus diperhatikan dalam mendeklarasikan konstruktor, yaitu :

- nama konstruktor harus sama dengan nama class

- tidak boleh mengembalikan nilai, (void) sekalipun

- untuk melakukan overload, syaratnya sama dengan overload method

Program di bawah ini akan memberikan gambaran pendeklarasian konstruktor :

class Manusia {

int usia; // property usia bertipe data int

String nama; // property nama bertipe data String

Manusia(int usiaManusia) { // konstruktor berparameter int

usia = usiaManusia;

System.out.println(“Usia : “ + usia);

}

Manusia(String namaManusia) { // overload konstruktor

nama = namaManusia;

System.out.println(“Nama : “ + nama);

}

}

class AksesManusia {

public static void main(String[] args) {

Manusia mns = new Manusia(“Aku”);

Manusia mns2 = new Manusia(20);

}

}

Kata kunci this, static

Kata kunci this digunakan untuk merujuk ke property yang terdapat di dalam sebuah class.

class Manusia {

int usia;

String nama;

// nama property di parameter, sama dengan nama property di class Manusia

void setManusia(String nama, int usia) {

this.usia = usia; // menggunakan kata kunci this

this.nama = nama; // jika tanpa this maka akan terjadi kesalahan

}

void cetakManusia() {

System.out.println(“Nama : “ + nama + “ Usia : “ + usia);

}

}

class AksesManusia {

public static void main(String[] args) {

Manusia mns = new Manusia()

mns.setManusia(“aku”, 22);

mns.cetakManusia();

}

}

Kata kunci static adalah untuk membuat variabel atau property, method, block kode, berlaku tidak hanya terbatas pada satu objek saja, namun pada seluruh objek yang kita buat dari sebuah class.

Jika method ataupun property di deklarasikan dengan sifat static, maka kita dapat menggunakannya tanpa harus terlebih dahulu membuat instance dari class bersangkutan. Itulah kenapa kita bisa memanggil method main tanpa harus membuat instance dari class yang mendeklarasikannya. Contoh di bawah ini akan memberikan gambaran tentang pengunaan kata kunci static.

class Manusia;

static int usia = 10;

static String nama = “aku”;

}

class AksesManusia {

public static void main(String[] args) {

Manusia a = new Manusia();

Manusia b = new Manusia();

System.out.println(“Nama : “ + a.nama);

System.out.println(“Usia : “ + Manusia.usia);

b.usia = 20;

b.nama = “kamu”;

System.out.println(“Nama : “ + b.nama);

System.out.println(“Usia : “ + a.usia);

}

}

Kata kunci Akses (public, private, protected, no modifier)

Access Levels

Modifier Class Package Subclass Luar Class

public Y Y Y Y

protected Y Y Y N

no modifier Y Y N N

private Y N N N

Demikianlah, sedikit pembahasan tentang Object Oriented Programming di Java. Walaupun tidak membahas secara mendalam, namun cukup mengantarkan anda memahami sedikit tentang OOP. Anda dapat mempelajari lebih jauh melalui tutorial yang dapat didownload dari situs java.

Membutuhkan waktu yang tidak sedikit untuk memahami konsep dasar Pemrograman Berorientasi Objek. Namun, diharapkan anda tidak menyerah begitu saja. Sangat banyak kegunaannya jika anda mengerti OOP, karena bahasa-bahasa pemrograman yang banyak digunakan di Industri Software hampir semuanya berorientasi Objek.

“ Aku tidak pernah dapat memikirkan

rencana mendetil tentang apa yang akan

terjadi di masa depan,

Aku hanya mengatakan, aku akan terus berjuang,

siapa yang tahu aku akan sampai dimana ”

Richard Stallman

( Free Software Foundation )


 Reply Comment
 
  The Gunk's ( 14-Aug-2009 12:32:27 )

Mantap info'na Bosss.......

  novi ( 11-Dec-2009 09:23:35 )

kan PBO ada ciri2nya tuh mas,, trus yang bisa menunjukkan ciri2nya di artikel ini, ada dimana ya?
terima kasih

<a href="http://jagoanweb.com">mampir dong</a>  smile

  Randi Dwi Putra ( 23-Dec-2009 20:22:19 )

@The Gunks-> seep

@novi -> hmm.., class dan Object, itu diantaranya..

  Rob ( 18-Mar-2010 11:34:01 )

Trima kasih master. Untuk informasinya yg sangat berguna untuk saya saat ini. GBU

 
Your name
Website http://
Comment
   
Image verification code
Retype image code here