OBJECT ORIENTED PROGRAMMING (OOP) / PEMROGRAMAN BERORIENTASI OBJEK (PBO)
1. Objek
Objek adalah benda, baik yang berwujud nyata seperti yang dijumpai dalam kehidupan kita, maupun yang tidak nyata, seperti halnya yang berupa sistem atau konsep. Dalam Object Oriented Programming (OOP), objek adalah unit terkecil pemrograman yang memiliki data (sifat karakteristik) dan fungsi.
Objek adalah Kesatuan entitas (benda), baik yang berwujud nyata atau pun hanya suatu sistem atau konsep yang memiliki sifat karakteristik dan fungsi. |
Pena yang kita pegang untuk menulis, mobil/motor yang kita kendarai saat bepergian, kue yang kita makan, kucing yang kita pelihara, telefon yang kita gunakan untuk berkomunikasi, kesemuanya adalah benda nyata dan merupakan objek. Pembayaran tagihan melalui internet, sistem antrian tiket di bioskop, penyimpanan uang di bank, atau pengendalian komunikasi data pada port I/O komputer, meskipun bukan benda nyata, namun kesemuanya juga merupakan objek.
Bagi anda yang pernah mempelajari bahasa pemrograman lain seperti Delphi, Visual Basic atau Visual C, pada saat mendesain layout grafis user interface tentulah tidak asing lagi dengan komponen CommandButton, EditText, Label, MessageBox, ProgressBardan lain sebagainya. Ini semua juga merupakan objek. Masing-masing komponen memiliki data atau yang biasa dikenal sebagai properties, dan juga fungsi (method).
2. Kelas
Kelas adalah wadah yang berisi abstraksi (pemodelan) dari suatu objek (benda), yang mendeskripsikan data (sifat karakteristik) dan fungsi yang dimiliki oleh objek tersebut. Karena kelas merupakan wadah yang akan digunakan untuk menciptakan objek, jelaslah bahwa kita harus membuat kelas terlebih dahulu sebelum membuat objek.
Kelas adalah Pemodelan dari objek yang berisi informasi (aturan) tentang sifat karakteristik (data) dan tingkah laku (method) yang dimiliki oleh objek tersebut. |
Hubungan antara kelas dan objek dapat diilustrasikan sebagai resep kue dengan kue-nya, di mana resep kue adalah kelas dan kue adalah objeknya. Sebelum membuat kue, kita harus membaca dan mempelajari resep kue tersebut terlebih dahulu. Di dalam resep disebutkan data mengenai kue, yaitu bahan-bahan yang diperlukan serta fungsi-fungsi yaitu bagaimana cara mengolah bahan tersebut hingga menjadi kue yang siap disajikan. Pada OOP, kita tidak hanya menggunakan resep kue yang sudah ada untuk membuat kue, namun juga menciptakan resep-resep kue yang baru sesuai selera kita. Oleh sebab itu, yang menjadi fokus dalam OOP adalah bagaimana menciptakan dan mendefinisikan kelas yang kelak menjadi wadah untuk membuat objek-objek.
3. Instance (Instansi)
Objek dapat dikatakan juga sebagai instans (instance) dari suatu kelas. Maksudnya, objek merupakan perwujudan dalam bentuk benda; baik berupa benda nyata, maupun konsep, sesuai dengan deskripsi yang telah didefinisikan oleh kelas. Proses pembentukan objek dari suatu kelas disebut instansiasi(instantiation).
Instans adalah Perwujudan. Dalam istilah pemrograman, objek merupakan instans (perwujudan) dari suatu kelas. Instansiasi adalah : Proses perwujudan kelas menjadi objek. |
Dari ilustrasi sebelumnya, pena merupakan instans dari kelas Alat Tulis yang memiliki data (sifat karakteristik) berbentuk batang, mudah digerakkan, runcing di bagian ujungnya serta memiliki fungsi mengeluarkan tinta saat dipakai menulis. Mobil merupakan instans dari Kendaraan Transportasi Darat , yang memiliki data beroda 4, berkapasitas 4-9 penumpang, dan memiliki fungsi percepatan, pengereman, transmisi gigi. Kue merupakan instans dari resep kue, dan seterusnya.
4. Data ó Variabel ó Property
Data adalah sifat karakteristik atau kondisi yang dimiliki oleh suatu objek. Ketiga istilah tersebut (data, variabel , property) memiliki pengertian yang sama, dan dapat digunakan/dianalogikan secara bergantian untuk lebih memperjelas suatu konsep. Ada juga buku yang menggunakan istilah atribut (attribute). Dalam OOP, istilah data lebih cenderung diartikan sebagai variabel yang membentuk sifat karakteristik dari suatu kelas. Sebagian besar buku referensi OOP menggunakan istilah data, namun di dalam buku ini kita akan memakai istilah data dan variabel secara bergantian agar lebih jelas.
Data adalah : Sifat karakteristik yang dimiliki oleh objek. Dalam beberapa referensi, data dianalogikan juga sebagai variabel, property, atau atribut. |
Sebagai ilustrasi, kita ingin membuat kelas BolaSport, yang memiliki objek diantaranya; bola pingpong, bola sepakbola, bola basket, bola volley, bola bowling dan sebagainya. Karena kelas merupakan abstraksi dari objek, maka pemilihan data haruslah yang dapat merepresentasikan objek secara umum. Beberapa data yang dapat digunakan yakni diameter, berat, bahan pembuat bola (plastik, karet, nilon sintetis), tekstur permukaan dan warna.
Dari kelas HewanDaratBerkakiEmpat, dapat diinstans objek-objek kucing, anjing, kuda, harimau, sapi, serigala dan lain sebagainya. Data dari kelas ini adalah: jumlah kaki, bulu, ekor, jenis makanan dan sebagainya.
5. Method óProsedur/Fungsi óBehaviour
Method adalah prosedur/fungsi yang dimiliki oleh sebuah objek. Karena pada hakikatnya merupakan prosedur/fungsi, maka method ini akan mengolah atau mengubah data/variabel yang ada di dalam objek sesuai dengan operasi yang telah ditentukan. Dari proses tersebut akan terjadi tiga kemungkinan;
1. Mengembalikan suatu nilai akhir.
2. Mengembalikan nilai yang bersifat sementara untuk kemudian
diumpankan ke method lain.
3. Tidak mengembalikan nilai sama sekali.
Seperti halnya data, keempat istilah method/prosedur/fungsi/behaviour memiliki pengertian yang sama, namun kita akan lebih banyak menggunakan istilah method.
Method adalah : Prosedur atau fungsi yang dimiliki oleh suatu objek. Dalam beberapa referensi, method dianalogikan juga dengan istilah prosedur, fungsi dan behaviour. |
Dari kelas Hewan Darat Berkaki Empat, selain data yang telah didefinisikan sebelumnya, kita juga dapat menentukan method yang dimiliki oleh kelas tersebut. Untuk mudahnya, ambilah method cara hewan-hewan tersebut bersuara, sehingga untuk kucing akan bernilai “mengeong”, anjing “menggonggong”, kuda “meringkik”, sapi “melenguh”, harimau “mengaum”. Data dan method ini harus dideklarasikan dan didefinisikan di dalam ClassBody.
6. Hierarki Kelas
Suatu kelas dapat dibuat sebagai kelas yang benar-benar baru, atau dapat juga dibentuk dari kelas yang sudah ada. Baru di sini dalam pengertian, semua data dan method yang dimiliki oleh kelas tersebut kita deskripsikan dan buat sendiri. Sedangkan bila membentuk dari kelas yang sudah ada, bermakna kita menggunakan data dan method yang telah dideskripsikan dalam suatu kelas acuan (fundamen). Proses pembentukan kelas baru dari kelas yang sudah ada disebut sebagai pewarisan (inheritance). Kelas yang menjadi basis bagi pembentukan kelas lainnya disebut sebagai Kelas Super, sedangkan kelas yang terbentuk dinamakan Kelas Sub.
Proses pewarisan ini akan menghasilkan suatu hierarki kelas. Kelas yang terletak pada puncak hierarki disebut sebagai Kelas Abstrak. Sifat dari kelas abstrak adalah, ia hanya berisi deskripsi data dan method yang sangat umum, sehingga tidak mungkin diimplementasikan secara terperinci. Oleh sebab itu, kelas abstrak ini tidak dapat langsung diinstansiasi menjadi objek.
Sebagai ilustrasi, tinjaulah hierarki kelas dari Kelas Hewan Darat Berkaki Empat yang memiliki objek (instans) berupa sapi, anjing, harimau, kuda, dan kucing. Kelas tersebut dihasilkan dari pewarisan kelas Hewan Darat, yang merupakan kelas sub dari Kelas Hewan, dan seterusnya sampai ke puncak kelas, yakni Kelas Mahluk Hidup. Dalam ilustrasi ini, Kelas Mahluk Hidup adalah kelas abstrak. Kita tidak mungkin menginstans objek-objek tersebut langsung dari Kelas Mahluk Hidup, karena ia hanya mengandung deskripsi data dan method yang sangat umum. Data bisa berupa organ-organ tubuh, sedangkan method berupa bernafas, makan, menghasilkan keturunan, dan sebagainya.
7. Object Oriented Programming
Object Oriented Programming atau Pemrograman Berorientasi Objek adalah konsep pemrograman yang difokuskan pada penciptaan kelas yang merupakan abstraksi/blueprint/prototypedari suatu objek. Kelas ini harus mengandung sifat (data) dan tingkah laku (method) umum yang dimiliki oleh objek-objek yang kelak akan dibuat (diinstansiasi). Data dan method merupakan anggota (member) dari suatu kelas
Untuk lebih memperjelas pemahaman tentang definisi di atas, marilah kita tinjau contoh program kalkulator sederhana yang akan menampilkan operasi dasar matematika penjumlahan, pengurangan, perkalian, pembagian. Kalkulator merupakan objek yang dibentuk dari kelas Alat Bantu Hitung Elektronik. Objek-objek lainnya yang dapat diinstansiasi dari kelas tersebut diantaranya : komputer, Personal Data Assitance (Palm), mesin Cash Register dan sebagainya.
8. Hubungan antara Kelas, Objek, Data dan Method
Dalam konsep OOP, objek diciptakan atau diinstansiasi dari kelas dengan mengisikan nilai parameter data dan memanfaatkan method yang telah dideskripsikan oleh kelas tersebut. Dengan demikian kelas juga merupakan template/prototipe dari suatu objek. Sama seperti kita hendak membuat lingkaran, kotak, atau flow diagram dengan menggunakan drawing tools seperti Visio. Kita hanya perlu mengakses suatu template gambar, klik dan drag objek yang diinginkan, dan kemudian melakukan adjustment (penyesuaian) ukuran.
Objek-objek yang berasal dari kelas yang sama akan memiliki tipe data yang sama (meskipun dengan nilai yang berbeda) dan fungsi yang sama. Objek dikatakan juga sebagai instance dari suatu kelas.
Dari kacamata seorang arsitek, gambar rancang bangun (desain cetak biru) merupakan suatu kelas, sedangkan objeknya adalah rumah/gedung itu sendiri. Di dalam cetak biru, setiap bagian rumah memiliki skala, dimensi dan susunan keterkaitan dengan bagian lainnya Bagi seorang koki/pembuat kue, resep adalah suatu kelas, sedangkan masakan/kue merupakan objek.
9. Kerangka Program OOP
Pada bagian ini kita akan mengaktualisasikan konsep-konsep OOP ke dalam bentuk program Java. Di sini akan diperkenalkan banyak istilah-istilah baru yang sering digunakan dalam membuat program. Anda tidak perlu khawatir bila pada bagian akhir dari bab ini masih terdapat bagian/istilah yang belum anda pahami atau kuasai. Ibarat seorang peserta rally mobil Off Road, bab ini memang dirancang sebagai peta jalan atau road map, sehingga anda tahu medan yang akan ditempuh, dan bagaimana untuk sampai ke sana.
***Gambar Kerangka ProgramOOP***
Suatu file source *.java dapat terdiri dari hanya satu kelas, namun bisa juga memiliki lebih dari satu kelas. Pada dasarnya, tidak ada perbedaan, apakah suatu kelas akan digabungkan dengan kelas lain pada suatu file, atau dipisahkan dalam suatu file *.java tersendiri. Pada saat kompilasi, kompiler akan membentuk file-file *.class yang berasal dari kelas-kelas tersebut. Jadi, meskipun suatu kelas dituliskan dalam suatu file bersama dengan kelas lainnya, kelas tersebut akan dikompile menjadi file *.class, sama seperti bila ia dituliskan dalam file tersendiri.
Secara umum, kerangka program OOP dapat ditinjau ke dalam 7 bagian penting:
a. Komentar.
b. Paket (package) dan Import.
c. Kelas.
d. Badan Kelas (Class Body).
e. Data.
f. Method.
g. Main Method.
A. Komentar
Komentar adalah bagian dari program yang bersifat sisipan; hanya untuk menjelaskan, dan bukan merupakan bagian instruksi/melibatkan operasi. Komentar dibutuhkan agar source code menjadi lebih jelas (well documented). Karena sifatnya hanya pelengkap, ia bisa dihilangkan/dihapus dari source code tanpa mengakibatkan perubahan program.
Ada tiga cara menuliskan komentar :
1. // komentar sebanyak satu baris
2. /*komentar lebih dari satu baris*/
3. /**komentar lebih dari satu baris dan bersifat sebagai official document yang menjelaskan bagaimana kelas dan method public bekerja*/
B. Package (Paket) dan Import
Untuk program berukuran kecil yang hanya melibatkan beberapa kelas dan referensi library Java sederhana, serta hanya memiliki satu file .java untuk dikompile, bagian ini tidak perlu dinyatakan secara eksplisit.
Namun bila program yang hendak dibuat melibatkan puluhan bahkan ratusan file kelas, serta membutuhkan feature yang spesifik yang harus diimport dari suatu library Java, maka bagian ini harus dinyatakan secara eksplisit.
Dari penjelasan di atas terlihat bahwa package dan import berguna dalam pengorganisasian kelas.
Package (paket) :
Package akan memberitahu Kompiler ke library mana suatu file kelas akan dikompile.
Syntax : package library_tujuan_kompilasi;
Import :
Import akan memberitahu Kompiler untuk meng-importsuatu komponen yang terletak dalam suatu library.
Syntax : import library_referensi;
Bila import tidak dinyatakan eksplisit, secara default, Kompiler akan meng-import komponen-komponen dari library java.lang.object. Import memiliki analogi dengan #include pada bahasa C/C++.
C. Kelas
Deklarasi Kelas
Bentuk deklarasi kelas yang paling sederhana adalah :
Class NamaKelas { Class Body } |
Namun untuk memaksimalkan konsep OOP, terutama pada saat mendesain program yang besar dan kompleks, dibutuhkan beberapa modifier dan keyword pelengkap yang menyertai bentuk dasar tersebut.
Secara umum, kelas memiliki struktur anatomi sebagai berikut :
(Modifier) Class NamaKelas (keyword tambahan) { Class Body } |
***Gambar struktur Bagan kelas***
Java memiliki beberapa keyword yang digunakan sebagai modifier, yaitu kata pelengkap yang berfungsi untuk menerangkan sifat suatu unsur (kelas/data/method). Modifier ini terletak di depan nama unsur yang akan diterangkan. Beberapa modifier yang digunakan dalam deklarasi kelas yakni abstract, final, multiple, static, serta tiga jenis lainnya yakni public, private, protected. Ketiga modifier terakhir digunakan untuk menentukan tingkat aksesabilitas dari suatu kelas/data/method terhadap kelas/data/method lainnya.
Modifier menuliskan kode program pada text editor Langkah pertama dalam pembuatan sebuah program berbasis Java Java Virtual Machine (JVM) pada sebuah mesin nyata. Modifier tersebut adalah abstract, final, multiple, static, (default), public, private, protected |
Keyword tambahan terdiri dari extends dan implements. Extends digunakan dalam prinsip pewarisan (inheritance), untuk menyatakan bahwa kelas tersebut merupakan perluasan dari super kelas. Implements digunakan bila kita ingin menggunakan interface, yakni kumpulan method yang dapat disisipkan ke dalam suatu kelas untuk aplikasi yang spesifik.
D. Class Body (Badan Kelas)
Class body adalah bagian program yang merupakan isi dari kelas, yang mendefinisikan segala aspek tentang objek, baik sifat (data) maupun kelakuan (method), yang akan digunakan sebagai blueprintatau prototype untuk menciptakan objek tersebut. Jelas bahwa data dan method dari kelas harus dituliskan di dalam class body ini. Class bodyini dituliskan sebagai satu blok setelah deklarasi kelas. Blok dalam Java adalah sejumlah statement/instruksi yang ditulis diantara dua tanda kurung kurawal { }.
Sebagai tambahan, terkadang dibutuhkan proses inisialisasi yang akan memberi nilai default saat objek tercipta pertama kali. Masih ingat saat kita membuat lingkaran dengan drawing tool pada MS Word atau Visio. Pada saat kita meng-click dan drag lingkaran tersebut ke dokumen kerja kita, ukuran lingkaran yang kita peroleh untuk pertama kali selalu dengan radius (jari-jari) sama. Untuk memberi nilai default kepada objek ini, dibutuhkan suatu bagian program yang disebut Konstruktor (Constructor)dan harus dideklarasikan di dalam class body ini. Konstruktor ini merupakan method juga dan akan dibahas lebih lanjut pada saat kita mulai membuat program.
Blok
Blok adalah grup yang menghimpun bagian tertentu program. Dalam Java, blok dimulai dengan tanda kurung kurawal buka ( { ) dan diakhiri dengan kurung kurawal tutup ( } ). Setiap kelas memiliki sebuah blok kelas yang menghimpun bagian data dan method. Setiap Method memiliki blok method yang menghimpun perintah-perintah fungsi. Blok ini dapat disarangkan (nested), maksudnya suatu blok dapat mengandung blok yang lebih kecil lagi.
E. Data/Variabel
Variabel adalah bagian memory yang berfungsi untuk menyimpan data. Setiap variabel harus memiliki tipe data dan diberi nama yang unik, sehingga berbeda satu dengan lainnya. Variabel ini dapat diinisialisasi dengan nilai awal dan nilai ini selanjutnya dapat berubah, sesuai dengan proses yang dilakukan padanya. Berdasarkan cara mengakses data, terdapat dua kategori tipe data dalam Java, yakni Tipe Data Primitif dan Tipe Data Referensi.
Aturan Penamaan Variabel
Untuk menamakan variabel, aturan yang dipakai sama seperti aturan penamaan kelas, namun pada bagian anjuran konvensi terdapat modifikasi sebagai berikut :
a. Bila nama variabel hanya terdiri dari satu abjad atau satu kata, semua abjad dituliskan sebagai huruf kecil. Contoh : “warna”, “nama”
b. Bila nama variabel terdiri dari dua kata atau lebih, kedua kata itu digabungkan. Huruf pertama dari kata pertama sebaiknya huruf kecil, sedangkan huruf pertama kata kedua dan kata berikutnya sebaiknya huruf kapital. Contoh : “radiusLingkaran”
Tipe data primitif
Pada saat kita mendeklarasikan variabel, sesungguhnya kita “memesan” sejumlah alamat memory sesuai dengan tipe data yang diinginkan. Bagian memory yang telah dipesan ini selanjutnya akan digunakan untuk menyimpan nilai data. Prinsip ini dinamakan tipe data primitif, yakni variabel (yang pada hakikatnya merupakan alamat memory) mengandung nilai data yang dimaksud.
Ada 8 tipe data primitif :
· 4 untuk merepresentasikan nilai bilangan bulat (integer), yaitu
byte, short, int, long
· 2 untuk bilangan nyata (koma desimal), yaitu float dan double
· 2 untuk tipe data yang lain; char dan boolean
Mendeklarasikan dan Menugaskan (Meng-assign) Variable bertipe Data Primitif
Bentuk umum :
tipedata namaVariabel = nilaiAwal |
Statement di atas merupakan bentuk singkat dari proses-proses :
1. Mendeklarasikan variabel dengan tipe tertentu
typedata namaVariabel
int radius;
2. Menugaskan variabel (meng-assign) untuk suatu nilai
radius = 2;
3. Menggabungkan deklarasi dan penugasan:
int radius = 2;
Tipe data referensi
Pada tipe data referensi, deklarasi variabel juga dimaksudkan untuk “memesan” sejumlah alamat memory. Namun bagian memory ini bukan untuk menyimpan nilai data seperti pada tipe data primitif, melainkan untuk menyimpan pointeryang menunjuk ke alamat memory berikutnya yang berisi nilai data yang dimaksud. Pointer ini adalah bilangan yang menunjukkan alamat memory “sebenarnya”.
Konsep pointer di sini hanya digunakan untuk menunjukkan perbedaan data internal antara tipe data primitif dan referensi. Java menghapuskan akses dan manipulasi pointer yang selama ini sering membingungkan programmer, seperti dalam bahasa C++.
Mekanisme penyimpanan objek di dalam memory juga menggunakan tipe data referensi. Variabel yang menyimpan objek ini disebut sebagai variabel referensi objek.
Contoh :
NamaKelas variabelReferensiObjek = new NamaKelas();
Lingkaran lingkaransatu = new Lingkaran();
Konstanta (Constant)
Konstanta (Constant) adalah variabel yang diberi suatu nilai awal (inisialisasi), dan nilai ini selanjutnya bersifat tetap, tidak dapat diubah oleh kelas maupun method manapun. Untuk mendeklarasikan sebuah Konstanta, digunakan modifier finaldi depan deklarasi variabel.
F. Method
Deklarasi Method
Deklarasi Method memiliki struktur sebagai berikut :
Modifier tipeNilaiKembalian namaMethod (parameter input) throws exception { body dari Method; } |
Method dapat kita ilustrasikan sebagai kotak hitam (black box) yang berfungsi untuk menerima data masukan, memprosesnya sesuai dengan operasi yang telah ditentukan, dan mengembalikan data hasil kepada bagian yang memanggilnya.
Beberapa hal yang harus diperhatikan dalam deklarasi method :
Modifier (Optional)
Jenis modifier yang digunakan di sini sama seperti pada deklarasi kelas. Namun selain dari ketujuh modifier yang telah dijelaskan di bagian kelas sebelumnya (
public
,
private
,
protected, abstract
,
final
,
multiple
,
static
), terdapat dua modifier lagi untuk mendeklarasikan method, yakni native dan synchronized.Tipe Nilai Kembalian (ReturnValueType)
Dilihat dari nilai yang dikembalikannya, method memiliki dua kemungkinan, yaitu mengembalikan suatu nilai, atau tidak. Bila method mengembalikan nilai, tipe nilai kembaliannya (returnValueType) harus dituliskan sesuai tipe datanya, sedangkan bila tidak mengembalikan nilai, returnValueTypekita beri atribut void.
Parameter input
Dilihat dari parameter input, method dapat dibagi menjadi dua, yakni membutuhkan input dan tidak. Input dalam Java bisa berupa input bertipe data primitif ataupun objek. Bila method membutuhkan input, maka tipe data parameter dari input tersebut harus dituliskan. Sedangkan bila tidak membutuhkan input, bagian di dalam tanda kurung setelah deklarasi method harus dikosongkan.
Jumlah parameter yang dapat diinputkan ke suatu method bisa tunggal atau banyak (multiple input). Bila bersifat multiple input, maka dalam penulisan parameter tersebut, masing-masing parameter harus dipisahkan dengan koma. Pada saat memanggil/mengakses method ini, harus pula diperhatikan urutan parameter yang dibutuhkan, sehingga method dapat memroses data dengan benar.
G. Main Method
Pada saat mengkompile file source (.java), Java Kompiler akan memeriksa syntax dan logika yang berlaku untuk kelas. Bila tidak terdapat error, akan terbentuklah satu file .class. Selanjutnya Java Interpreter akan mengeksekusi file .class ini, dan menjalankan aplikasi tersebut.
***Gambar Alur compilasi dan eksekusi dengan j2sdk***
Pada saat Java Interpreter akan mengeksekusi file .class, yang pertama dilakukan adalah mencari main method dan kemudian menjalankan baris demi baris statement yang terdapat di dalamnya. Prinsip ini sama dengan fungsi mainpada bahasa C/C++.
Main method ini harus dituliskan dalam bentuk baku seperti di bawah ini, bila tidak, Java Interpreter tidak akan mengeksekusi aplikasi tersebut :
public static void main( String args[] ) { body dari Main Method } |
10. Membuat Objek dari suatu Kelas
Untuk membuat objek dari suatu kelas, dibutuhkan operator new.
Bentuk umum :
NamaKelas variabelReferensiObjek = new NamaKelas(); |
Ungkapan di atas merupakan bentuk singkat dari serangkaian proses berikut :
1. Mendeklarasikan variabel referensi objek :
NamaKelas objekReferensi;
Lingkaran lingkaransatu;
2. Menciptakan objek dari kelas, dengan operator new.
new NamaKelas( );
new Lingkaran( );
3. Menugaskan (meng-assign) variabel kepada objek yang telah dibuat.
lingkaransatu = new Lingkaran( );
Proses di atas dapat digabungkan menjadi :
NamaKelas variabelReferensiObjek = new NamaKelas( );
Lingkaran lingkaransatu = new Lingkaran( );
Bila kita cermati langkah-langkah instansiasi objek dari kelas di atas, terlihat analogi saat kita mendeklarasikan suatu variabel dan meng-assign-nya ke tipe data primitif.
Int radius;
radius = 3;
atau bila digabungkan menjadi satu statement :
int radius = 3;
11. Mengakses Data dan Method dari Suatu Kelas
Untuk mengakses data dan method dari suatu kelas, digunakan bentuk berikut :
NamaKelas.namaVariabel; NamaKelas.namaMethod(); |
Yang perlu diperhatikan dalam mengakses data dan method adalah bagaimana mengatur tingkat aksesibilitas (accesibility level) kedua unsur tersebut terhadap kelas yang mengakses, apakah bersifat default, public, private, atau protected.
12. Menampilkan Hasil di Layar Monitor
Seperti halnya pembacaan input dari keyboard, proses menampilkan suatu variabel atau hasil perhitungan di layar monitor juga dapat dibagi menjadi dua :
1. Dalam lingkungan Console.
Mencetak variabel atau suatu hasil perhitungan sangatlah mudah. Kita dapat menggunakan method print() atau println() pada kelas System dalam struktur package java.lang. Package ini merupakan default package bagi semua aplikasi java, sehingga kita tidak perlu mengimport kelas System tersebut.
System.out.print(); System.out.println(); |
2. Menggunakan komponen GUI, seperti kelas JOptionPane.
Kita tinggal memanggil method untuk mencetak ke layar yang telah disediakan oleh kelas tersebut. Sebagai contoh, Kelas JOptionPane merupakan komponen dari package javax.swing yang dapat digunakan baik sebagai output maupun input. Untuk menampilkan tulisan di layar digunakan method showMessageDialog(), sedangkan untuk membaca input digunakan method showInputDialog().
Sebagai catatan, pada proses mencetak hasil perhitungan dari suatu method, kita bisa menampungnya dalam suatu variabel terlebih dahulu. Selain itu kita juga bisa langsung menuliskan method tersebut lengkap dengan argumennya pada statement System.out.println();
Contoh :
System.out.println(“Hasil Sinus sudut adalah : “ + Math.sin(sudut));
13. Membaca Data Input dari keyboard
Proses pembacaan data input yang diketikkan oleh user melalui keyboard dapat ditinjau menjadi dua :
1. Dalam lingkungan Console (DOS).
Proses pembacaan data pada console tidaklah semudah ketika mencetak hasil ke monitor. Java tidak memiliki method khusus untuk membaca data input dalam lingkungan console. Untuk itu kita harus menderinisikan sendiri kelas / method pembacaan data tersebut.
2. Menggunakan komponen GUI, seperti kelas JOptionPane.
Komponen GUI memiliki method standard untuk menampilkan variabel/hasil ke layar, seperti method showInputDialog pada Kelas JOptionPane.
14. Keyword dalam Java
Sebagai pengenalan, di bawah ini terdapat keyword lengkap yang merupakan standard dalam Java. Daftar ini hanya bersifat referensi, sehingga anda tidak perlu memahami semuanya sekaligus pada saat ini, apalagi menghapalkannya.
abstract
boolean
break
byte
case
catch
char
class
const
continue
default
do
double
else
extends
final
finally
float
for
goto
if
implements
import
instanceof
int
interface
long
native
new
package
private
protected
public
return
short
static
super
switch
synchronized
this
throw
throws
transient
try
void
volatile
while
15. Bagaimana Mempelajari Java ?
Java merupakan bahasa pemrograman yang didesain dengan basis OOP, bersifat multiplatform, dan diperuntukkan untuk aplikasi yang sangat luas; mulai dari aplikasi biasa, internet, wireless, telekomunikasi, bahkan game. Oleh sebab itu Java memiliki begitu banyak keyword, kelas dan API (interface) standard.
Bila pada tahap ini anda merasa begitu banyak istilah baru yang belum anda pahami, wajarlah kiranya. Namun setelah membaca beberapa materi dan mempraktekkan contoh-contoh program, lambat laun anda akan terbiasa dengan istilah tersebut.
Beberapa tips untuk belajar Java :
1. Mempelajari dasar-dasar pemrograman, sambil memahami beberapa istilah / keyword yang sering digunakan.
2. Mulai dengan membuat aplikasi sederhana berbasis teks I/O (Command Console), bila sudah mahir, dapat beranjak ke pemrograman berbasis GUI (Graphical User Interface).
3. Sesekali luangkan waktu untuk membaca referensi kelas dan API (interface) standard, karena Java memiliki begitu banyak library standard yang siap digunakan. Dokumen ini tersedia gratis dan dapat didownload dalam bentuk help document di alamat web site Sun : http://java.sun.com/downloads/index.html
4. Mengikuti perkembangan Java dari berbagai resource, internet, mailing list, majalah. Mendownload free sample source code dari beberapa site, dan mencoba memodifikasinya.
5. Bila sudah menguasai Java2, cobalah untuk meningkatkan skill anda dengan mempelajari topik-topik spesifik aplikasi Java, seperti Beans, RMI (Remote Method Invocation), J2EE (Java 2 Enterprise Edition) serta J2ME (Java 2 Micro Edition).
17. Menulis dan Mengedit Program
Untuk menulis program Java, kita hanya membutuhkan sebuah text editor sederhana, misalnya notepad, yang merupakan aplikasi built-indari Windows. Sekedar sebagai tips, untuk program yang berukuran besar hingga ratusan atau ribuan baris, disarankan untuk menggunakan editor yang memiliki informasi tentang nomor baris seperti UltraEdit. Ini dimaksudkan agar kita mudah men-trace dan mengoreksi source file bila terjadi syntax error saat mengkompile program. File ini kemudian kita simpan (save) dengan ekstension .java, namun perlu diingat aturan penamaan file sebagai berikut :
1. Nama file .java haruslah sama dengan nama kelasnya (perhatikan huruf kecil dan huruf kapital), jika tidak, maka akan terjadi error pada saat kompilasi.
2. Bila dalam satu file .java terdapat lebih dari satu kelas, di mana salah satu kelasnya mengandung method main(),dan kita ingin mengeksekusi kelas tersebut (dengan Interpreter), maka nama file .java harus sama dengan nama kelas itu.
3. Bila dalam satu file .java terdapat lebih dari satu kelas dan salah satu kelas dideklarasikan sebagai public, maka nama file .java harus sama dengan kelas public tersebut.
Comments
Post a Comment