Java bagi pemula

 Bahasa Java

Java adalah sebuah teknologi yang diperkenalkan oleh Sun Microsystems pada pertengahan tahun

1990. Menurut definisi dari Sun, Java adalah nama untuk sekumpulan teknologi untuk membuat dan

menjalankan perangkat lunak pada komputer standalone ataupun pada lingkungan jaringan. Kita lebih

menyukai menyebut Java sebagai sebuah teknologi dibanding hanya sebuah bahasa pemrograman,

karena Java lebih lengkap dibanding sebuah bahasa pemrograman konvensional. Teknologi Java

memiliki tiga komponen penting, yaitu:

• Programming-language specification

• Application-programming interface

• Virtual-machine specification

Bahasa Pemrograman Java

Bahasa Java dapat dikategorikan sebagai sebuah bahasa pemrograman berorientasi objek,

pemrograman terdistribusi dan bahasa pemrograman multithrreaded. Objek Java dispesifikasi dengan

membentuk kelas. Untuk masing-masing kelas Java, kompiler Java memproduksi sebuah file keluaran

arsitektur netral yang akan jalan pada berbagai implementasi dari Java Virtual Machine (JVM).

Awalnya Java sangat digemari oleh komunitas pemrograman internet, karena Java mendukung untuk

applets, dimana program dengan akses sumber daya terbatas yang jalan dalam sebuah web browser.

Java juga menyediakan dukungan level tinggi untuk networking dan objek terdistribusi.

Java juga dianggap sebagai sebuah bahasa yang aman. Tampilan ini pada khususnya penting

menganggap bahwa sebuah program Java boleh mengeksekusi silang sebuah jaringan terdistribusi.

Java API

Java API terdiri dari tiga bagian utama:

• Java Standard Edition (SE), sebuah standar API untuk merancang aplikasi desktop dan applets

dengan bahasa dasar yang mendukung grafis, M/K, keamanan, konektivitas basis data dan jaringan.

• Java Enterprose Edition (EE), sebuah inisiatif API untuk merancang aplikasi server dengan

mendukung untuk basis data.

• Java Macro Edition (ME), sebuah API untuk merancang aplikasi yang jalan pada alat kecil seperti

telepon genggam, komputer genggam dan pager.

Java Virtual Machine

Java Virtual Machine (JVM) adalah sebuah spesifikasi untuk sebuah komputer abstrak. JVM terdiri

dari sebuah kelas pemanggil dan sebuah interpreter Java yang mengeksekusi kode arsitektur netral.

Kelas pemanggil memanggil file .class dari kedua program Java dan Java API untuk dieksekusi oleh

interpreter Java. Interpreter Java mungkin sebuah perangkat lunak interpreter yang menterjemahkan

satu kode byte pada satu waktu, atau mungkin sebuah just-intime (JIT) kompiler yang menurunkan

bytecode arsitektur netral kedalam bahasa mesin untuk host computer.

Atribut

Atribut dari sebuah kelas adalah variabel global yang dimilki sebuah kelas, misalkan pada kelas

sebagai berikut:

 class Elemen

 NilaiMatKul elmt

 Elemen next

 Elemen()

 {end constructor}

 {end class}

maka elmt dan next adalah atribut dari kelas Elemen. Atribut pada sebuah kelas memiliki izin akses

jika kelas digunakan oleh kelas lain, izin akses itu seperti private, public dan protected.

Atribut Private

Izin akses private pada sebuah atribut biasanya digunakan oleh sebuah kelas untuk melindungi atribut￾atributnya agar tidak dapat diakses oleh kelas lain. Sebuah atribut yang dinyatakan sebagai private

hanya dapat diakses secara langsung oleh kelas yang membungkusnya, sedangakan kelas lainnya tidak

dapat mengakses atribut ini secara langsung, misalkan kelas sebagai berikut:

 class Elemen

 private NilaiMatKul elmt

 private Elemen next

 Elemen()

 {end constructor}

 {end class}

maka yang dapat mengakses elmt dan next hanyalah kelas Elemen sehingga jika sebuah kelas List di

dalamnya mempunyai kode sebagai berikut:

 Elemen e <- new Elemen

maka pengaksesan e.next tidak dizinkan pada kelas List. Agar isi dari sebuah atribut private dapat

diakses oleh kelas lain dapat dibuat sebuah metode yang mengembalikan nilai atribut itu, misalnya

sebagai berikut:

 public getNext() -> Elemen

 -> next

 {end getNext}

sehingga kelas lain akan mengakses atribut next pada kelas Elemen dengan kode Elemen n <

e.getNext().

Atribut Public

Izin akses public sebuah kelas, jika sebuah atribut diperbolehkan diakses secara langsung oleh kelas

lain. Sebuah atribut yang dinyatakan sebagai public dapat diakses secara langsung oleh kelas lain di

luar kelas yang membungkusnya, misalkan pada kelas Elemen sebagai berikut:

 class Elemen

 public NilaiMatKul elmt

 Elemen next

 Elemen ()

 {end constructor}

 {end class}

maka aatribut elmt dan next dapat diakses secara langsung oleh kelas lain, misalkan dengan kode:

 Elemen e <- new Elemen()

 e.next <- NULL

Jika sebuah atribut tidak ditulis izin aksesnya misalkan hanya ditulis Element next, maka interpreter

Java akan menganggap atribut next mempunyai izin akses public.

Atribut Protected

Izin akses protected sebuah atribut biasanya digunakan oleh sebuah kelas, jika sebuah atribut

diperbolehkan diakses secara langsung oleh kelas lain yang merupakan kelas turunannya (

inheritance). Sebuah atribut yang dinyatakan sebagai protected tidak dapat diakses secara langsung

oleh kelas lain di luar kelas yang membungkusnya, kecuali kelas yang mengaksesnya adalah kelas

turunan dari kelas yang membungkusnya, misalkan pada kelas Elemen sebagai berikut:

 class Elemen

 protected NilaiMatKul elmt

 protected Elemen next

 Elemen()

 {end constructor}

 {end class}

maka atribut elmt dan next dapat diakses secara langsung oleh kelas lain yang merupakan turunan

kelas Elemen. Izin akses protecteddimaksudkan untuk melindungi atribut agar tidak diakses secara

langsung oleh sembarang kelas lain, namun diizinkan diakses secara langsung oleh kelas turunannya.

Inheritance

Inheritanceatau pewarisan pada pemrograman berorientasi objek merupakan suatu hubungan dua

buah kelas atau lebih. Dalam hal ini ada kelas yang memiliki atribut dan metode yang sama dengan

kelas lainnya beserta atribut dan metode tambahan yang merupakan sifat khusus kelas yang menjadi

turunannya. Sebagai contoh, misalkan ada sebuah kelas Titik yang mempunyai kelas turunan Titik3D:

 class Titik

 private integer x

 private integer y

 Titik()

 x < 0

 y < 0

 {end Titik}

 public getX() -> integer

 -> x

 {end getX}

 public getY() -> integer

 -> y

 {end getY}

 {end class}

 class Titik3D: Titik

 private integer z

 Titik3D()

 z <- 0

 {end Titik3D}

 public getZ() -> integer

 -> z

 {end getZ} 

{end class}

Keterkaitan antara kelas Titik dan Titik3D adalah kelas Titik3D merupakan kelas turunan dari kelas

Titik. Dalam hal ini kelas Titik disebut dengan kelas dasar atau super classatau base classsedangkan

kelas Titik3D disebut sebagai kelas turunan atau derived classatau subclass.

Pada contoh di atas, ketika kelas Titik3D dibuat objeknya maka objek tersebut dapat menggunakan

metode yang ada pada kelas Titik walau pada kode programnya metode itu tidak dituliskan, misalkan

sebagai berikut:

 Titik3D p <- new Titik3D()

 integer x <- p.getX()

 integer y <- p.getY()

 integer z <- p.getZ()

Keuntungan dari pewarisan adalah tidak perlu mengutak atik kode kelas yang membutuhkan tambahan

atribut atau metode saja, karena tinggal membuat kelas turunannya tanpa harus mengubah kode kelas

dasarnya. Kelas dasar akan mewariskan semua atribut dan kodenya kecuali konstruktor dan destruktor

yang memiliki izin akses publicdan protectedke kelas turunannya dengan izin akses yang sama dengan

pada kelas dasar.

Ketika sebuah kelas turunan dibuat objeknya saat eksekusi, maka secara implisit konstruktor kelas

dasar dipanggil terlebih dahulu baru kemudian konstruktor kelas turunan dijalankan. Begitu juga saat

objek dimusnahkan maka secara destruktor kelas turunan akan dijalankan baru kemudian destruktor

kelas dasar dijalankan.

Interface

Interfaceatau antar muka pada bahasa pemrograman Java sangat mirip dengan kelas, tapi tanpa

atribut kelas dan memiliki metode yang dideklarasikan tanpa isi. Deklarasi metode pada sebuah

interfacedapat diimplementasikan oleh kelas lain. Sebuah kelas dapat mengimplementasikan lebih

dari satu interfacebahwa kelas ini akan mendeklarasikan metode pada interfaceyang dibutuhkan

kelas itu sekaligus mendefiniskan isinya pada kode program kelas itu. Metode pada interfaceyang

diimplementasikan pada suatu kelas harus sama persis dengan yang ada pada interface. Misalnya pada

interfaceterdapat deklarasi void printAnimal(); maka pada kelas yang mengimplementasikan metode

itu harus ditulis sama yaitu:

void printAnimal(){ .....................

 }

Sebuah interfacedideklarasikan dengan kode:

interface nama_antarmuka{ metode_1 metode_2

 ..................... metode_n }

misalnya:

interface Animal{ void printAnimal();

 }

Adapun deklarasi kelas yang mengimplementasikan interface sebagai berikut:

class nama_kelas implements interface_1,

 interface_2, ..., interface_n{ metode_1 metode_2

 ...................................... metode_n }

misalnya:

class Mamalia implements Animal{ Mamalia (){ }

 void prontAnimal(){ system.out.println("printAnimal dalam kelas

 Mamalia"); } } .

Komentar

Postingan populer dari blog ini

Html bagi pemula