Java sebagai
salah satu bahasa pemrograman baru menjanjikan banyak kemudahan bagi programer
junior maupun senior. Tutorial ini akan membawa Anda mengenal lebih jauh bahasa
ini melalui pembahasan konsep model perancangan dan petunjuk sederhana
penggunaannya.
Apakah Java?
Java adalah
bahasa pemrograman berorientasi objek yang dikembangkan oleh Sun Microsystems
sejak tahun 1991. Bahasa ini dikembangkan dengan model yang mirip dengan bahasa
C++ dan Smalltalk, namun dirancang agar lebih mudah dipakai dan platform
independent, yaitu dapat dijalankan di berbagai jenis sistem operasi dan
arsitektur komputer. Bahasa ini juga dirancang untuk pemrograman di Internet
sehingga dirancang agar aman dan portabel.
Platform Independent
Platform
independent berarti program yang ditulis dalam bahasa Java dapat dengan mudah
dipindahkan antar berbagai jenis sistem operasi dan berbagai jenis arsitektur
komputer. Aspek ini sangat penting untuk dapat mencapai tujuan Java sebagai
bahasa pemrograman Internet di mana sebuah program akan dijalankan oleh
berbagai jenis komputer dengan berbagai jenis sistem operasi. Sifat ini berlaku
untuk level source code dan binary code dari program Java. Berbeda dengan
bahasa C dan C++, semua tipe data dalam bahasa Java mempunyai ukuran yang
konsisten di semua jenis platform. Source code program Java sendiri tidak perlu
dirubah sama sekali jika Anda ingin mengkompile ulang di platform lain. Hasil
dari mengkompile source code Java bukanlah kode mesin atau instruksi prosesor
yang spesifik terhadap mesin tertentu, melainkan berupa bytecode yang berupa
file berekstensi .class. Bytecode tersebut dapat langsung
Anda eksekusi di tiap platform yang dengan menggunakan Java Virtual Machine
(JVM) sebagai interpreter terhadap bytecode tersebut.
JVM sendiri
adalah sebuah aplikasi yang berjalan di atas sebuah sistem operasi dan
menerjemahkan bytecode program Java dan mengeksekusinya, sehingga secara konsep
bisa dianggap sebagai sebuah interpreter. Proses pengeksekusian program Java.
Dengan cara ini, sebuah program Java yang telah dikompilasi akan dapat berjalan
di platform mana saja, asalkan ada JVM di sana.
Kompiler dan
interpreter untuk program Java berbentuk Java Development Kit (JDK) yang
diproduksi oleh Sun Microsystems. JDK ini dapat didownload gratis dari situs java.sun.com Interpreter untuk program Java
sendiri sering juga disebut Java Runtime atau Java Virtual Machine. Interpreter
Java, tanpa kompilernya, disebut Java Runtime Environment (JRE) dapat
didownload juga di situs yang sama. Untuk mengembangkan program Java dibutuhkan
JDK, sementara jika hanya ingin menjalankan bytecode Java cukup dengan JRE
saja. Namun untuk mengeksekusi applet (sebuah bytecode Java juga) Anda biasanya
tidak perlu lagi mendownload JRE karena browser yang Java-enabled telah
memiliki JVM sendiri.
Library
Selain kompiler dan interpreter, bahasa Java sendiri memiliki library yang cukup besar yang dapat mempermudah Anda dalam membuat sebuah aplikasi dengan cepat. Library ini sudah mencakup untuk grafik, desain user interface, kriptografi, jaringan, suara, database, dan lain-lain.
Selain kompiler dan interpreter, bahasa Java sendiri memiliki library yang cukup besar yang dapat mempermudah Anda dalam membuat sebuah aplikasi dengan cepat. Library ini sudah mencakup untuk grafik, desain user interface, kriptografi, jaringan, suara, database, dan lain-lain.
OO
Java adalah
bahasa pemrograman berorientasi objek. Pemrograman berorientasi objek secara
gamblang adalah teknik untuk mengorganisir program dan dapat dilakukan dengan
hampir semua bahasa pemrograman. Namun Java sendiri telah mengimplementasikan
berbagai fasilitas agar seorang programer dapat mengoptimalkan teknik
pemrograman berorientasi objek.
Sedikit
perbandingan tambahan dengan bahasa C dan C++, Java banyak mewarisi konsep
orientasi objek dari C++ namun dengan menghilangkan aspek-aspek kerumitan dalam
bahasa C++ tanpa mengurangi kekuatannya. Hal ini mempermudah programer pemula
untuk mempelajari Java namun mengurangi keleluasaan programer berpengalaman
dalam mengutak-atik sebuah program. Di balik kemudahan yang ditawarkan Java,
luasnya fasilitas library Java sendiri membuat seorang programer membutuhkan
waktu yang tidak singkat untuk dapat menguasai penggunaan library-library
tersebut.
Memulai Pemrograman Java
Untuk
membuat program Java, seperti telah disebutkan sebelumnya, Anda membutuhkan
JDK. Proses instalasi JDK tersebut sangat mudah dan tidak membutuhkan
pengetahuan tertentu. Namun untuk menggunakannya Anda perlu melakukan beberapa
penyesuaian dengan sistem operasi Anda. Umumnya yang perlu Anda lakukan adalah
memasukkan path ke direktori JDK Anda ke setting path pada sistem operasi Anda.
Misalkan direktori JDK Anda adalah C:\jdk1.4 maka pada
Windows 98 Anda cukup menambahkan baris perintah SET PATH=C:\jdk1.4\bin pada file autoexec.bat Anda. Untuk
Windows NT/2000/XP Anda cukup menambahkan direktori C:\jdk1.4\bin pada variabel path di System
Environment. Caranya: klik kanan ikon My Computer, pilih Properties.
Kemudian pilih tab Advanced. Lalu klik tombol Environment Variables,
cari variabel path, kemudian tambahkan path direktori
JDK Anda ke dalam variabel tersebut. Untuk Linux, tambahkan baris perintah SET CLASSPATH=(direktori jdk Anda) ke file profile Anda. Untuk mencoba
JDK, ketikkan perintah java dan javac pada shell prompt (atau DOS Command Prompt). Jika perintah tersebut sudah
dikenali maka program java atau javac akan menampilkan sintaks penggunaan. Untuk kemudahan dan berbagai
fasilitas tambahan Anda dapat menggunakan Integrated Development Environment
(IDE) untuk bahasa Java seperti Visual Café dari Symantec atau JBuilder
dari Borland.
Urutan
langkah-langkah yang harus Anda lakukan untuk membuat sebuah program Java
sederhana adalah:
- Membuat source code program dengan editor teks apapun. Ingat, file tersebut harus berekstensi .java dan case sensitive.
- Mengkompile source code dengan perintah javac. Misalnya: javac HelloWorld.java. Jika berhasil, hasilnya adalah file bytecode berakhiran .class.
- Mengeksekusi bytecode dengan perintah java. Parameter dari perintah ini adalah nama file hasil kompilasi tanpa ekstensi .class. Contoh: java HelloWorld.
Berikut kode
untuk HelloWorld.java:
public class HelloWorld
{
public static void main(String[] args)
{
System.out.println("Apa Kabar Dunia?");
}
}
{
public static void main(String[] args)
{
System.out.println("Apa Kabar Dunia?");
}
}
Dan ini
sebuah contoh lain, yaitu applet sederhana untuk menampilkan teks di applet.
Sebutlah file ini bernama HelloWorldApplet.java:
import java.awt.Graphics;
public class HelloWorldApplet extends java.applet.Applet
{
public void paint(Graphics g)
{
g.drawString("Apa Kabar Dunia?", 5, 25);
}
}
public class HelloWorldApplet extends java.applet.Applet
{
public void paint(Graphics g)
{
g.drawString("Apa Kabar Dunia?", 5, 25);
}
}
Secara
gamblang dapat diperhatikan bahwa struktur kedua program sangat mirip, dan
hanya berbeda dalam konteks eksekusi. Kedua program ini akan dibahas lebih
lanjut setelah kita membahas cara mengkompile dan mengeksekusi program
tersebut.
Perlu
diingat bahwa bahasa Java bersifat case sensitive, sehingga Anda harus
memperhatikan penggunaan huruf besar dan kecil. Selain itu penulisan source
code program tidak harus memperhatikan bentuk tertentu, sehingga Anda bisa saja
menuliskan semua baris source code tersebut dalam satu baris asal Anda tidak
lupa membubuhkan tanda titik koma (;), atau
menuliskan tiap kata dalam satu baris tersendiri. Namun dianjurkan Anda
mengikuti layout seperti pada contoh agar program Anda mudah dibaca dan
dimengerti.
Kompilasi
Setelah
kedua file disave dengan nama HelloWorld.java dan HelloWorldApplet.java, kita akan mengkompile kedua program tersebut dengan
perintah:
prompt> javac HelloWorld.java
prompt> javac HelloWorldApplet.java
prompt> javac HelloWorldApplet.java
Perlu
diperhatikan bahwa direktori aktif Anda saat ini adalah direktori tempat Anda
meletakkan file-file program tersebut. Anda tetap dapat mengkompile program
Anda dari direktori berbeda dengan perintah:
prompt> javac (direktori program)/namafile.java
Setelah
perintah ini selesai, Anda akan melihat bahwa telah tercipta dua buah file .class, yaitu bytecode hasil kompilasi source code kita.
Sintaks Program
Sekarang
kita akan mencoba membahas elemen-elemen dalam kedua source code tersebut.
Pada awal Listing 2 kita menemukan perintah import. Pada tahap awal ini Anda perlu mengetahui bahwa pernyataan tersebut hanya
berfungsi mempermudah penulisan metode atau dalam bahasa pemrograman lain
disebut prosedur atau fungsi. Jadi Anda hanya perlu menulis Graphics sebagai pengganti java.awt.Graphics, karena
kita telah mengimpor java.awt.Graphics.
Kemudian di
masing-masing listing terdapat pernyataan public class. Pernyataan
ini adalah pernyataan pembuka sebuah kelas. Kelas sendiri digunakan untuk
menciptakan objek. Ingat bahwa Java berorientasi objek. Kata public di depannya berfungsi agar kelas tersebut dapat diakses oleh semua program
lain. Untuk saat ini anggaplah objek sebagai suatu item yang dapat dimanipulasi
oleh sebuah program. Dalam Listing 2 terdapat tambahan kata extends. Hal ini berarti kelas yang kita buat akan mewarisi
sifat-sifat dari kelas yang kita extends. Dengan
kata lain kita menjadikan kelas yang kita extends sebagai
himpunan bagian dari kelas kita buat.
Kemudian
kita menemukan baris pernyataan public static void main(String[] args) dan public void paint(Graphics g). Keduanya adalah pernyataan pembuka sebuah metode.
Metode sendiri adalah kumpulan pernyataan untuk melakukan suatu tugas tertentu
dalam kelas. Keduanya sebenarnya mempunyai fungsi yang sama namun dalam konteks
yang berbeda. Dalam setiap aplikasi harus ada sebuah metode yang bernama main yang akan dieksekusi pertama kali saat program tersebut dieksekusi.
Sementara dalam applet, metode yang pertama kali akan dieksekusi ketika applet
diload adalah paint. Kata public di depannya mempunyai fungsi yang sama dengan kata public yang ada di depan baris permulaan kelas. Namun nantinya Anda akan
menemukan juga bentuk lain seperti private dan protect yang akan kita bahas nanti.
Pada Listing 1 terdapat kata static pada pernyataan pembuka metode main. Hal ini berarti metode main tidak mengubah atau menggunakan objek yang diciptakan oleh kelas tersebut,
sehingga dapat dikatakan berdiri sendiri dan tidak terikat dengan objek. Dalam
metode main dalam aplikasi, parameternya adalah
selalu String[]
args, di mana args hanyalah sebuah nama dari objek array dari String. Array ini nantinya akan berisi parameter-parameter yang diberikan user
sebagai argumen command line. Sementara Anda tidak perlu mengerti mengenai
parameter tersebut, cukup diingat bahwa bentuk metode main harus selalu demikian.
Kemudian di
dalam kedua metode pada kedua listing tersebut, kita menemukan sebuah
pernyataan. Anda tentu dapat saja meletakkan lebih dari satu pernyataan dalam
sebuah metode. Setiap pernyataan dalam sebuah metode dipisahkan oleh titik koma
dan akan dieksekusi satu persatu. Kedua pernyataan pada listing ternyata
memanggil sebuah metode lain yaitu metode println dan paint. Tentunya dapat Anda perhatikan bahwa untuk memanggil sebuah metode
diperlukan tiga komponen yaitu:
- Objek yang ingin kita pakai. Dalam hal ini objek System.out dan Graphics g.
- Nama metode yang ingin kita pakai. Dalam hal ini println dan paint.
- Sepasang tanda kurung yang berisi informasi tambahan yang diperlukan oleh metode yang dipanggil, yaitu parameter.
Dalam Listing 1, pernyataan System.out.println("Apa Kabar Dunia?"); berarti carilah objek out dalam kelas System kemudian panggil metode println dari objek out dengan
parameter berupa string "Apa
Kabar Dunia?". Sedang
dalam Listing 2, pernyataan g.drawString("Apa Kabar Dunia?", 5, 25); berarti carilah objek g kemudian panggil metode drawString pada objek g dengan parameter "Apa
Kabar Dunia?”, 5, 25);.
Setelah
selesai membahas sintaks dasar Java dalam kedua listing, selanjutnya kita akan
mencoba mengeksekusi kedua program ini. Untuk program pertama yang berupa
aplikasi biasa, kita tinggal mengetikkan perintah java HelloWorld pada prompt dan pesan Apa Kabar Dunia? akan tampil di layar (atau mungkin di tempat lain,
bergantung sistem operasi Anda). Sedangkan untuk applet kita mesti membuat
sebuah file HTML sebagai pembungkus—atau pemanggilnya. Berikut diberikan contoh
file HTML untuk membungkus applet yang kita buat.
<HTML>
<HEAD>
<TITLE>Coba Applet</TITLE>
</HEAD>
<BODY>
<APPLET CODE="HelloWorldApplet.class" WIDTH=150 HEIGHT=25>
</APPLET>
</BODY>
</HTML>
<HEAD>
<TITLE>Coba Applet</TITLE>
</HEAD>
<BODY>
<APPLET CODE="HelloWorldApplet.class" WIDTH=150 HEIGHT=25>
</APPLET>
</BODY>
</HTML>
Beri nama helloword.html dan simpanlah di direktori yang sama dengan lokasi
file-file .java dan .class sebelumnya. Untuk mengeksekusi applet kita cukup membuka file HTML
tersebut di browser yang Java-enabled atau mengetikkan perintah appletviewer namafile.html di prompt.
Pengertian
Attribute
Attribute adalah data yang membedakan antara objek satu dengan yang lain. Elemen data yang terdapat pada suatu object yang berasal dari class yang menyimpan informasi tentang objek. Attribute dapat diartikan sebagai data, variabel, properti atau sebuah fiels data, dan setiap variabel harus memiliki tipe data dan nama yang unik untuk membedakan antara variabel satu dengan yang lainnya.
Dalam class, atribut sering disebut sebagai variabel. Atribute terbagi menjadi dua jenis yaitu Instance Variable dan Class Variable.
Instance variable adalah atribut untuk setiap objek dari class yang sama. Setiap objek mempunyai dan menyimpan nilai atributnya sendiri. Jadi, setiap objek dari class yang sama boleh mempunyai nilai yang sama atau berbeda.
Class variable adalah atribute untuk semua objek yang dibuat dari class yang sama. Semua objek mempunyai nilai atribut yang sama. Jadi semua objek dari class yang sama mempunyai hanya satu nilai yang value nya sama.
Pengertian Methods
Dalam java method disebut juga sebagai behavior, methods digunakan untuk merubah nilai attribute suatu objek, juga untuk menerima atau mengirim informasi dari/ke objek lain untuk melakukan instruksi.
Pengertian Constructor
Constructor adalah sebuah method khusus yang digunakan dalam kelas untuk membuat dan menganalisa sebuuah objek baru. Construktor berfungsi untuk menginisialisasi nilai terhadap data yang terdapat pada kelas yang berhubungan. Ketentuan constructor untuk melakukan inisialisasi :
Attribute adalah data yang membedakan antara objek satu dengan yang lain. Elemen data yang terdapat pada suatu object yang berasal dari class yang menyimpan informasi tentang objek. Attribute dapat diartikan sebagai data, variabel, properti atau sebuah fiels data, dan setiap variabel harus memiliki tipe data dan nama yang unik untuk membedakan antara variabel satu dengan yang lainnya.
Dalam class, atribut sering disebut sebagai variabel. Atribute terbagi menjadi dua jenis yaitu Instance Variable dan Class Variable.
Instance variable adalah atribut untuk setiap objek dari class yang sama. Setiap objek mempunyai dan menyimpan nilai atributnya sendiri. Jadi, setiap objek dari class yang sama boleh mempunyai nilai yang sama atau berbeda.
Class variable adalah atribute untuk semua objek yang dibuat dari class yang sama. Semua objek mempunyai nilai atribut yang sama. Jadi semua objek dari class yang sama mempunyai hanya satu nilai yang value nya sama.
Pengertian Methods
Dalam java method disebut juga sebagai behavior, methods digunakan untuk merubah nilai attribute suatu objek, juga untuk menerima atau mengirim informasi dari/ke objek lain untuk melakukan instruksi.
Pengertian Constructor
Constructor adalah sebuah method khusus yang digunakan dalam kelas untuk membuat dan menganalisa sebuuah objek baru. Construktor berfungsi untuk menginisialisasi nilai terhadap data yang terdapat pada kelas yang berhubungan. Ketentuan constructor untuk melakukan inisialisasi :
- Construktor harus sama dengan nama kelas
- Constructor tidak menverifikasi tipe data yang dikirim
- Kelas dapat berisi banyak constructor overloading yang memungkinkan objek diinisialisasi
Dalam
pemrograman java terdapat konsep pemrograman java diantara nya sebagai berikut
:
- Class
- Object
- Abstraksi
- Enkapsulasi (Encapsulation)
- Pewarisan (Inheritance)
- Polimorfisme
- Interface
1. Class
Class adalah tempat atau wadah yang digunakan untuk menciptakan objek yang menjelaskan data ( sifat karateristik data ) dan fungsi yang dimiliki suatu objek.
2. Object
Objek merupakan hasil dari sebuah kelas, artinya sebuah kelas dapat membuat beberapa object. Contoh sebuah rungan dimana ruangan tersebut terdapat berbagai objek seperti kursi , meja dan lainnya, jadi kelas adalah ruangan dan kursi, meja adalah objecy nya.
3. Abstraksi
Abstraksi adalah pengabstrakan atau penyembunyian kerumitan suatu proses. Hal ini bertujuan untuk membuat kelas abstrak dimana kelas lain dapat memanfaatkannya (extends) dengan cara menjadi subclass dari kelas abstrak tersebut. Abstrak class digunakan untuk mendeklarasikan karakteristik umum dari subclass. Abstract class tidak bisa diinstansiasi sama halnya dengan kelas interface. Abstract class hanya bisa digunakan sebagai superclass, tapi juga bisa diturunkan dari class abstract lainnya.
Untuk mendeklarasikan sebuah abstract class digunakan keyword abstract,
[abstract] class [class_name]. Sebuah abstract class pada dasarnya tidak jauh beda dengan class lainnya, yakni juga berisi method yang menggambarkan karakteristik dari kelas abstract tersebut, bedanya yakni sebuah abstract class bisa berisi method tanpa diimplementasikan artinya sebuah method tanpa body, method seperti ini disebut method abstract. Untuk pendeklarasiannya digunakan keyword abstract: [abstract] modifier class [class_name] berikut contoh program yang menggunakan class abstract.
Contoh
Abstrak class :
abstract class Shape{
public String color;
//constractor default, constraktor yang tidak memiliki argumen dan isi
public Shape(){
}
//sama halnya dengan kelas biasa abstract class juga bisa berisi method
//seperti yang ada pada kelas biasa
public void setColor(String c){
color = c;
}
public String getColor(){
return color;
}
//sebuah abstract method yang tidak memiliki body
//method ini akan diinisialisasi nantinya pada subclass yang mewarisi kelass abstract Shape ini
//semua abstract method yang ada pada class abstract harus diimplementasikan
//semua oleh subclass
abstract public double area();
}
//keyword extends adalah keyword yang digunakan oleh subclass
//ketika melakukan pewarisan terhada super class
public class Point extends Shape{
static int x, y;
public Point(){
x = 0;
y = 0;
}
public double area(){
return 0;
}
public double perimeter(){
return 0;
}
public static void print(){
System.out.println("point: " + x + "," + y);
}
public static void main(String args[]){
Point p = new Point();
p.print();
}
}
Hasil output :
abstract class Shape{
public String color;
//constractor default, constraktor yang tidak memiliki argumen dan isi
public Shape(){
}
//sama halnya dengan kelas biasa abstract class juga bisa berisi method
//seperti yang ada pada kelas biasa
public void setColor(String c){
color = c;
}
public String getColor(){
return color;
}
//sebuah abstract method yang tidak memiliki body
//method ini akan diinisialisasi nantinya pada subclass yang mewarisi kelass abstract Shape ini
//semua abstract method yang ada pada class abstract harus diimplementasikan
//semua oleh subclass
abstract public double area();
}
//keyword extends adalah keyword yang digunakan oleh subclass
//ketika melakukan pewarisan terhada super class
public class Point extends Shape{
static int x, y;
public Point(){
x = 0;
y = 0;
}
public double area(){
return 0;
}
public double perimeter(){
return 0;
}
public static void print(){
System.out.println("point: " + x + "," + y);
}
public static void main(String args[]){
Point p = new Point();
p.print();
}
}
Hasil output :
4. Enkapsulasi (Encapsulation)
Enkapsulasi atau pembungkusan adalah membungkus atribut (field atau variabel) dan tingkah laku (method) didalam sebuah class. Dalam pemrograman java terdapat 3 tingkatan akses data untuk melakukan pembungkusan kode dan data yaitu :
a. Tingkat akses Private.
Dalam encapsulation-private ini dapat diartikan bahwa method yang digunakan hanya dapat diakses oleh kelas yang memilikinya, dan tidak mengijinkan kelas lain yang berada dalam program untuk mengakses dang menggunakan method tersebut. Untuk mendeklarasikannya menggunakan kata kunci private.
b. Tingkat akses Protected.
Dalam encapsulation-protected ini dapat diartikan bahwa method yang digunakan dapat diakses oleh kelas yang memilikinya dan kelas yang masih memiliki hubungan turunan. Kelas yang dapat mengakses adalah kelas yang berada dalam package yang sama dan subclass yang berada dalam package yang berbeda. Untuk mendeklarasikannya menggunakan kata kunci protected.
c. Tingkat akses Public.
Encapsulation-public ini merupakan kebalikan dari encapsulation-private, dapat diartikan bahwa method yang digunakan dapat diakses oleh semua bagian dalam kelas atau program, meskipun kelas tersebut tidak memiliki hubungan sama sekali ( meliputi semua kelas, kelas turunan dan kelas lain ).
5. Pewarisan (Inheritance)
Pewarisan adalah penurunan ( pewarisan ) suatu atribut maupun method dari sebuah kelas ke kelas lainnya. Pewarisan di java terdiri dari 2 macam yaitu superclass dan subclass.
a. Superclass
Superclass adalah class yang letaknya di atas class tertentu didalam hierarki, atau dapat diartikan class yang mewarisi ke class yang lain.
b. Subclass
Subclass adalah class yang letaknya di bawah class tertentu didalam hierarki, atau dapat diartikan class yang diwarisi dari class yang lain. Untuk pewarisan dalam java terdapat istilah yang namanya Multiple Inheritance, Multiple Inheritance adalah subclass yang menjadi sebagai superclass bagi class yang lain. Untuk mengambil sebuah class, dapat menggunakan kata kunci extends.
Keuntungan penggunaan Inheritance dalam OOP adalah :
1. Ketika behavior ( method ) dideklarasikan dalam superclass, behavior tersebut otomatis diwariskan ke seluruh subclass.
2. Jadi, kita dapat meng-enkode method hanya sekali dan method tersebut dapat digunakan oleh seluruh subclass.
3. Sebuah subclass hanya perlu mengimplementasikan perbedaan antara dirinya sendiri dan parent-nya.
6. Polimorphisme
Polimorphism adalah suatu konsep dalam pemrograman java dimana objek yang berbeda dapat memiliki berbagai bentuk dengan nama yang sama pada suatu kelas (class). Polimorphism juga merupakan aspek kedua setelah reusable dari pewarisan ( inheritance ).
Contoh memahami konsep polymorphism adlah ketika anda memiliki jam beker, kemudian anda menetapkan waktu tertentu pada jam. Ketika waktu yang ditentukan tepat, maka jam beker tersebut akan bordering biasa dan jam beker yang lain mungkin dapat bergetar sambil menyanyikan music kesayangan anda.
Dari contoh diatas dapat kita ketahui bahwa objek dasar dari suatu jam beker memiliki kemampuan untuk mengeluarkan bunyi ketika waktunya tepat. Namum demikian, perilaku dari tiap-tiap jam beker dapat berbeda-beda, misalnya dalam bentuk tradisional, digital, dan sebagainya.
7. Interface
Interface adalah sekumpulan metode abstrak yang tidak memiliki implementasi. Interface selalu abstrak meskipun tidak secara ekplisit dideklarasikan sebagai abstrak.
Dalam Java, kata interface adalah kata kunci yang memiliki arti tambahan. Suatu interface dalam hal ini adalah antar muka yang terdiri dari subrutin tanpa implementasi apa-apa. Suatu kelas dapat mengimplementasi suatu interface dengan memberikan kode detail pada setiap subrutin yang ditulis pada interface tersebut.
Didalam interface javaterdapat istilah interface-modifier yang merupakan salah satu atau gabungan dari kata kunci public, protected, private, abstract, static, dan strictfp.
a. Interface-Modifier: Public
Sebuah interface harus dideklarasikan dengan modifier public, agar dapat diakses dari package yang lain. Nama dari interface ini harus sama dengan nama file source .java.
b. Interface-Modifier: Protected
Interface-modifier ini hanya berlaku untuk member-interface yang berada didalam sebuah class. Jika member-interface berada dalam sebuah interface maka secara implicit ia public, sehingga tidak dapat lagi memakai modifier protected.
c. Interface-Modifier: Private
Interface-modifier ini hanya berlaku untuk member-interface yang berada didalam sebuah class. Jika member-interface berada dalam sebuah interface maka secara implicit ia public, sehingga tidak dapat lagi memakai modifier private. Jika modifier private dipakai oleh sebuah modifier-interface, maka member-interface tersebut hanya akan terlihat ( dapat diakses ) di dalam class yang memilikinya.
d. Interface-Modifier: Abstract
Semua interface ( termasuk member-interface ) secara inplisit selalu abstract, karena interface ditunjukan untuk menyimpan anggota berupa abstract-method. Dengan demikian, meskipun deklarasi interface tidak menggunakan modifier abstract secara eksplisit, Ia akan selalu abstract.
e. Interface-Modifier: Static
Interface-modifier ini hanya berlaku untuk member-interface. Jika member-interface berada dalam sebuah class, maka secara implicit ia static. Jika member-interface berada dalam sebuah interface, maka secara implicit ia static dan public. Sehingga meski member-interface tidak memakai modifier static, ia akan selalu dianggap static. Dengan demikian, member-interface akan diinisialisasi hanya sekali saja. Yaitu pada saat class atau interface yang dimilikinya diinisialisasi.
Penutup
Untuk saat
ini Anda telah mempunyai gambaran tentang bagaimana proses pembuatan program
Java secara sederhana dalam bentuk aplikasi biasa atau applet. Anda juga dapat
mencoba mengembangkan program sederhana tersebut sesuai dengan keinginan Anda
berdasarkan hal-hal yang sudah Anda ketahui. Konsep dasar yang sudah Anda
dapatkan akan dikembangkan lebih lanjut dalam topik-topik tutorial selanjutnya.
Selamat mencoba!
Tidak ada komentar:
Posting Komentar