Pertemuan 1 JAVA
Pertemuan 1 JAVA
DASAR-DASAR
PEMROGRAMAN BERORIENTASI OBYEK
Program komputer adalah simulasi digital dari suatu model konseptual atau fisik yang
seringkali menjadi sangat rumit. Kerja programer bertujuan untuk memecahkan kerumitan
ini menjadi bentuk yang mudah dimengerti dan ditampilkan untuk para pemakai melalui
antar muka.
BAHASA PEMROGRAMAN
1Bahasa pemrograman adalah bahasa yang menjadi sarana manusia untuk
berkomunikasidengan komputer. Pikiran manusia yang tidak terstruktur harus dibuat
terstruktur agar bisa berkomunikasi dengan komputer. Komputer memerlukan kepastian dan
logika yang benaruntuk dapat melakukan suatu instruksi tertentu. Untuk itu diperlukan
algoritma yang baik dan benar.
Kelebihannya adalah mempunyai waktu eksekusi yang cepat, masih bisa dipelajari
daripada bahasa mesin dan file hasil kompilasi sangat keci. Kelemahannya : Tetap sulit
dipelajari dan program sangat panjang.
Bahasa ini mendukung information hiding, enkapsulasi, dan abstract data type. Bahasa
tingkat tinggi memiliki generasi, misalnya generasi ke-3 (Pascal, C/C++) dan generasi
ke-4 (Delphi, VB, VB.NET, Visual Foxpro). Kelebihannya adalah mudah dipelajari,
Pemrograman JAVA
2
mendekati permasalahan yang akan dipecahkan dan kode program pendek sedangkan
kelemahannya mempunyai waktu eksekusi lambat
Dalam lingkungan pemrograman yang lama, program dibuat sebagai urutan perintah yang
linier. Model ini disebut juga sebagai model berorientasi proses dengan memikirkan
langkah-langkah tunggal dalam masalah tanpa memodelkan gambaran keseluruhan
masalah, contoh : Bahasa C, Bahasa BASIC, Bahasa PASCAL dsb.
Meskipun program ini baik untuk program yang sederhana, masalah banyak timbul ketika
program bertambah besar misalnya kelambatan definisi antar muka atau interaksi, program
tidak teratur dan kesalahan lebih sering timbul.
Model Data berorientasi objek dikatakan dapat memberi fleksibilitas yang lebih, kemudahan
mengubah program, dan digunakan luas dalam teknik piranti lunak skala besar. Lebih jauh
lagi, pendukung OOP mengklaim bahwa OOP lebih mudah dipelajari bagi pemula dibanding
dengan pendekatan sebelumnya, dan pendekatan OOP lebih mudah dikembangkan dan
dirawat.
Pemrograman ini mempunyai fungsi-fungsi obyek yang mudah dipahami dan memiliki antar
muka yang jelas dan layak antar obyek. Pendekatan yang digunakan adalah top-down
design dimana masalah dipahami pertama kali dalam bentuk paling abstrak, baru kemudian
mendefinisikan sub rutin yang berkaitan dengan implementasi yang lebih konkrit.
Pemrograman Berorientasi Objek (OOP) adalah metode pemrograman yang meniru cara
kita memperlakukan sesuatu(benda). Ada tiga karakteristik bahasa Pemrograman
Berorientasi Objek, yaitu :
1. Pengkapsulan (Encapsulation)
Mengkombinasikan suatu struktur dengan fungsi yang memanipulasinya untuk
membentuk tipe data baru yaitu kelas (class). Selain itu pengkapsulan juga memastikan
pengguna sebuah objek tidak dapat mengganti keadaan dalam dari sebuah objek
dengan cara yang tidak layak; hanya metode dalam objek tersebut yang diberi ijin untuk
mengakses keadaannya. Setiap objek mengakses interface yang menyebutkan
bagaimana objek lainnya dapat berinteraksi dengannya. Objek lainnya tidak akan
mengetahui dan tergantung kepada representasi dalam objek tersebut.
Analoginya adalah seperti ini, bayangkan jika anda seorang arsitek, sebelum
membangun rumah tentunya akan merancang dulu di kertas, jumlah dan letak pintu,
jendela, dan semuanya, itulah class. Kemudian dari gambar rumah tersebut kita dapat
membangun banyak rumah sesuai rancangan yang sudah dibuat. Masing-masing rumah
jadi tersebut adalah yang disebut dengan objek/instance.
Pemrograman JAVA
3
2. Pewarisan (Inheritance)
Mendefinisikan suatu kelas dan kemudian menggunakannya untuk membangun hirarki
kelas turunan, yang mana masing-masing turunan mewarisi semua akses kode maupun
data kelas dasarnya.
Objek didefinisikan dan diciptakan dengan jenis khusus dari objek yang sudah ada
objek-objek ini dapat membagi (dan memperluas) perilaku mereka tanpa harus
mengimplementasi ulang perilaku tersebut (bahasa berbasis-objek tidak selalu memiliki
inheritas.)
Suatu kelas dapat diciptakan berdasarkan kelas lain. Kelas baru ini mempunyai sifat-
sifat yang sama dengan kelas pembentuknya, ditambah sifat-sifat khusus lainnya.
Dengan pewarisan kita dapat menciptakan kelas baru yang mempunyai sifat sama
dengan kelas lain tanpa harus menulis ulang bagian-bagian yang sama. Pewarisan
merupakan unsur penting dalam pemrograman berorientasi objek dan merupakan blok
bangunan dasar pertama penggunaan kode ulang (code reuse).
Yang perlu menjadi catatan di sini adalah bahwa data dan fungsi yang dapat diwariskan
hanya yang bersifat public dan protected. Untuk data dan fungsi private tetap tidak dapat
diwariskan. Hal ini disebabkan sifat protected yang hanya dapat diakses dari dalam
kelas saja. Sifat pewarisan ini menyebabkan kelas-kelas dalam pemrograman
berorientasi objek membentuk hirarki kelas mulai dari kelas dasar, kelas turunan
pertama, kelas turunan kedua dan seterusnya. Sebagai gambaran misalnya ada hirarki
kelas unggas.
Sebagai kelas dasar adalah Unggas. Salah satu sifat Unggas adalah bertelur dan
bersayap. Kelas turunan pertama adalah Ayam, Burung dan Bebek. Tiga kelas turunan
ini mewarisi sifat kelas dasar Unggas yaitu bertelur dan bersayap. Selain mewarisi sifat
kelas dasar, masing-masing kelas turunan mempunyai sifat khusus, Ayam berkokok,
Burung terbang dan Bebek berenang. Kelas Ayam punya kelas turunan yaitu Ayam
Kampung dan Ayam Hutan. Dua kelas ini mewarisi sifat kelas Ayam yang berkokok.
Tetapi dua kelas ini juga punya sifat yang berbeda, yaitu: Ayam Kampung berkokok
panjang halus sedangkan Ayam hutan berkokok pendek dan kasar.
3. Polimorphisme (Polymorphism)
Memberikan satu aksi untuk satu nama yang dipakai bersama pada satu hirarki kelas,
yang mana masing-masing kelas hirarki menerapkan cara yang sesuai dengan dirinya.
Polimorfisme melalui pengiriman pesan. Tidak bergantung kepada pemanggilan
Pemrograman JAVA
4
subrutin, bahasa orientasi objek dapat mengirim pesan; metode tertentu yang
berhubungan dengan sebuah pengiriman pesan tergantung kepada objek tertentu di
mana pesa tersebut dikirim.
Contohnya, bila sebuah burung menerima pesan “gerak cepat”, dia akan menggerakan
sayapnya dan terbang. Bila seekor singa menerima pesan yang sama, dia akan
menggerakkan kakinya dan berlari. Keduanya menjawab sebuah pesan yang sama,
namun yang sesuai dengan kemampuan hewan tersebut. Ini disebut polimorfisme
karena sebuah variabel tungal dalam program dapat memegang berbagai jenis objek
yang berbeda selagi program berjalan, dan teks program yang sama dapat memanggil
beberapa metode yang berbeda di saat yang berbeda dalam pemanggilan yang sama.
Hal ini berlawanan dengan bahasa fungsional yang mencapai polimorfisme melalui
penggunaan fungsi kelas-pertama.
Sebuah class adalah dasar dari modularitas dan struktur dalam pemrograman
berorientasi object. Sebuah class secara tipikal sebaiknya dapat dikenali oleh seorang
non-programmer sekalipun terkait dengan domain permasalahan yang ada, dan kode
yang terdapat dalam sebuah class sebaiknya (relatif) bersifat mandiri dan independen
(sebagaimana kode tersebut digunakan jika tidak menggunakan OOP).
Dengan modularitas, struktur dari sebuah program akan terkait dengan aspek-aspek
dalam masalah yang akan diselesaikan melalui program tersebut. Cara seperti ini akan
menyederhanakan pemetaan dari masalah ke sebuah program ataupun sebaliknya.
2. Objek
Membungkus data dan fungsi bersama menjadi suatu unit dalam sebuah program
komputer; objek merupakan dasar dari modularitas dan struktur dalam sebuah program
komputer berorientasi objek.
3. Abstraksi
Kemampuan sebuah program untuk melewati aspek informasi yang diproses olehnya,
yaitu kemampuan untuk memfokus pada inti. Setiap objek dalam sistem melayani
sebagai model dari “pelaku” abstrak yang dapat melakukan kerja, laporan dan
perubahan keadaannya, dan berkomunikasi dengan objek lainnya dalam sistem, tanpa
mengungkapkan bagaimana kelebihan ini diterapkan. Proses, fungsi atau metode dapat
juga dibuat abstrak, dan beberapa teknik digunakan untuk mengembangkan sebuah
pengabstrakan.
Dengan menggunakan OOP maka dalam melakukan pemecahan suatu masalah kita tidak
melihat bagaimana cara menyelesaikan suatu masalah tersebut (terstruktur) tetapi objek-
objek apa yang dapat melakukan pemecahan masalah tersebut. Sebagai contoh anggap
kita memiliki sebuah departemen yang memiliki manager, sekretaris, petugas administrasi
data dan lainnya. Misal manager tersebut ingin memperoleh data dari bagian administrasi
maka manager tersebut tidak harus mengambilnya langsung tetapi dapat menyuruh petugas
bagi administrasi untuk mengambilnya. Pada kasus tersebut seorang manager tidak harus
mengetahui bagaimana cara mengambil data tersebut tetapi manager bisa mendapatkan
Pemrograman JAVA
5
data tersebut melalui objek petugas administrasi. Jadi untuk menyelesaikan suatu masalah
dengan kolaborasi antar objek-objek yang ada karena setiap objek memiliki job
descriptionnya sendiri.
Destruktor adalah pasangan konstruktor. Pada saat program menciptakan objek secara
otomatis konstruktor akan dijalankan, yang biasanya dimaksudkan untuk memberi nilai awal
variabel private. Fungsi destruktor (penghancur atau pelenyap) secara otomatis akan
dijalankan pada saat berakhirnya kehidupan objek. Fungsi destruktor adalah untuk mende-
alokasikan memori dinamis yang diciptakan konstruktor.
PENGANTAR JAVA
Java adalah bahasa pemrograman serbaguna untuk membuat program seperti PASCAL
atau C++ yang mendukung sumber daya Internet (web) dan mendukung aplikasi
klien/server baik dalam jaringan lokal (LAN) maupun WAN.
Java dikembangkan oleh Sun Microsystems pada Agustus 1991 dengan nama semula OAK
oleh James Gosling. OAK merupakan kepanjangan dari Object Application Kernel dan pada
tahun 1995 berganti nama menjadi JAVA.
Java merupakan hasil perpaduan dari sifat sejumlah bahasa pemrograman yaitu C, C++,
Object-C, SmallTalk dan Common LISP.
Java dapat dijalankan pada sembarang komputer dengan sembarang sistem operasi.
Ketidakbergantungan terhadap platform sering dinyatakan dengan istilah portabilitas.
Tingkat portabilitas Java tidak hanya pada program sumber (source code) tetapi juga pada
tingkat kode biner (bytecode)
Netware Novell
OS/2 IBM
OS/390 dan OS/400 IBM
Solaris Sun Microsystems
Keluarga Windows Microsoft Corporation
Situs yang dapat Anda kunjungi untuk mencari informasi dan men-download mengenai Java
adalah http://java.sun.com/
2. Aplikasi
adalah program yang dibuat dengan Java yang bersifat umum tanpa menggunakan
perangkat lunak web browser.
setelah Anda menginstall program Java, tambahkan file autoexec.bat dengan isi :
CLS
ECHO OFF
CLS
SET CLASSPATH=.;C:\J2SDK1.4.2_12\LIB\TOOLS.JAR
PATH C:\J2SDK1.4.2_12\BIN
Contoh :
// nama file selamatbelajar.java (1)
public class selamatbelajar (2)
{ (3)
public static void main (String[ ] args) (4)
{ (5)
System.out.println("Selamat Belajar Java"); (6)
} (7)
} (8)
Keterangan :
Baris (1) menyatakan komentar yang berfungsi menjelaskan kepada pembaca program
Baris (3) merupakan bagian yang mengawali pendefinisian kelas berupa suatu blok
yang diawali simbol { dan diakhiri dengan } pada baris (8)
Definisi main() terdapat pada baris (4) sampai (7) yang berfungsi sebagai awal
pengeksekusian.
Kata public menyatakan bahwa metode ini dapat dipanggil dari mana saja
Kata static menyatakan bahwa metode ini bersifat sama untuk semua instan kelas
Kata void menyatakan bahwa metode ini tidak memberikan nilai balik
Kata String[] menyatakan kelas yang berhubungan dengan penanganan huruf
Kata args menyatakan array untuk tempat memperoleh baris perintah
Baris (6) merupakan pernyataan untuk menampilkan tulisan
Kata System.out digunakan untuk menangani keluaran standar pada Java
Kata println digunakan untuk mencetak ke layar
TUGAS
Buat program dengan Java untuk menampilkan Biodata Pribadi Anda !
Pemrograman JAVA