Nama
Matakuliah : Pemrograman
Berorientasi Objek
Nama
: I Gusti Ngurah Yoga Pawitra
NIM : 1404505052
Nama
Dosen : I Putu Agus Eka Pratama ST.,MT
Jurusan
: Teknologi Informasi
Fakultas
: Teknik
Universitas
:
Udayana
Pengertian Java
Java
adalah bahasa pemrograman yang dapat dijalankan di berbagai komputer termasuk
telepon genggam. Java awalnya dibuat oleh James Gosling saat masih bergabung di
Sun Microsystems yang saat ini merupakan bagian dari Oracle dan dirilis tahun
1995. Bahasa ini banyak mengadopsi sintaksis yang terdapat pada C dan C++ namun
dengan sintaksis model objek yang lebih sederhana serta dukungan rutin-rutin
aras bawah yang minimal. Aplikasi-aplikasi berbasis java umumnya dikompilasi ke
dalam p-code (bytecode) dan dapat dijalankan pada berbagai Mesin Virtual Java
(JVM). Java merupakan bahasa pemrograman yang bersifat umum/non-spesifik
(general purpose), dan secara khusus didisain untuk memanfaatkan dependensi
implementasi seminimal mungkin. Karena fungsionalitasnya yang memungkinkan
aplikasi java mampu berjalan di beberapa platform sistem operasi yang berbeda,
java dikenal pula dengan slogannya, "Tulis sekali, jalankan di mana
pun". Saat ini java merupakan bahasa pemrograman yang paling populer digunakan,
dan secara luas dimanfaatkan dalam pengembangan berbagai jenis perangkat lunak
aplikasi ataupun aplikasi berbasis web
Pada
bahasa pemrograman Java juga terdapat kekurangan dan kelebihannya. Kelebihan Java
yaitu dapat dijalankan dalam beberapa platform komputer dan sistem operasi yang
berbeda. Hal ini sesuai dengan sloganny. Yang kedua adalah OOP atau Object
Oriented Programming. Java memiliki library yang lengkap. Library disini adalah
sebuah kumpulan dari program yang disertakan dalam Java. Hal ini akan memudahkan
pemrograman menjadi lebih mudah. Kelengkapan library semakin beragam jika
ditambah dengan karya komunitas Java. Sedangkan kelemahannya adalah pada satu slogannya, yakni “Tulis sekali dan
jalankan dimana saja” ternyata tidak sepenuhnya benar. Beberapa hal harus
disesuaikan jika dijalankan pada platform yang berbeda. Misalnya untuk J2SE
dengan platform SWT-AWT bridge tidak dapat berfungsi di Mac OS X. Kekurangan
lainnya adalah kemudahan aplikasi Java didekompilasi. Dekompilasi adalah suatu
proses membalikkan sebuah aplikasi menjadi kode sumbernya. Hal ini memungkinkan
terjadi pada Java karena berupa bytecode yang menyimpan bahasa tingkat tinggi.
Hal ini terjadi pula pada platform .NET dari Microsoft sehingga program yang
dihasilkan mudah dibajak kodenya karena sulit untuk disembunyikan.
Class
Program-program
yang ditulis menggunakan Java selalu menggunakan kelas-kelas (class) yang
mencerminkan objek-objek (object) yang sesungguhnya hadir di dunia nyata. Hal
ini berarti saat kita akan membuat program menggunakan bahasa pemograman Java,
kita harus mempertimbangkan objek-objek apa saja yang semestinya hadir dalam
program kita dan bukannya semua objek yang ada di dunia nyata, dimana proses
ini sering disebut sebagai abstraksi, suatu kelas pada umumnya memiliki
data/atribut yang berfungsi untuk mendeskripsikan (menerangkan) kelas yang
bersangkutan, dan juga pada umumnya memiliki metode/fungsi yang menjelaskan apa
yang akan/bisa dilakukan oleh kelas yang bersangkutan. Kelas merupakan konsep
pokok di bahasa pemograman berorientasi object, demikian juga di Java. Kelas
merupakan bentuk logis yang menjadi landasan bangun seluruh bahasa pemograman
berorientasi object. Kelas mendefinisikan bentuk dan perilaku object. Kelas
sungguh sangat penting di Java. Sembarang konsep/abstraksi yang
diimplementasikan di Java harus di kapsulkan di kelas.
Java
adalah bahasa pemograman yang full OOP. Artinya pengelolaan program sepenuhnya
diarahkan pada pembentukan object. Pemograman Java tidak mungkin dipisahkan
dari kelas. Penggunaan terpenting kelas adalah dalam pendefinisian type baru.
Kelas adalah template/prototype yang mendefinisikan type object. Kelas
merupakan sarana pengkapsulan kumpulan data dan metode-metode yang beroperasi
pada kumpulan data. Data dan metode untuk mendefinisikan isi dan kamampuan
object. Kelas adalah cetakan object. Object harus merupakan instan suatu kelas.
Kelas digunakan untuk menciptakan banyak object. Object-object dari kelas yang
sama mempunyai data sendiri tapi berbagi implementasi metode dengan object-object
lain di satu kelas. Kelas dapat merupakan realisasi/implementasi abstraksi di
domain persoalan.
Pewarisan
Kelas merupakan blok
pembangun terpenting di pendekatan berorientasi object. Kelas adalah tipe data
abstrak yang dilengkapi implementasi parsial atau total. Kelas mendeskripsikan
kelompok object dengan properti-properti (atribut-atribut) serupa, perilaku
(operasi-operasi) yang common, keterhubungan terhadap himpunan object-object
lain dan semantik yang common. Seperti juga tipe data abstrak, kelas
mendeskripsikan sekelompok struktur data yang dapat dibentuk oleh kelas,
disebut instan kelas atau object. Inheritance (Pewarisan) merupakan salah satu
dari tiga konsep dasar OOP. Konsep inheritance ini mengadopsi dunia riil dimana
suatu entitas/obyek dapat mempunyai entitas/obyek turunan. Dengan konsep
inheritance, sebuah class dapat mempunyai class turunan. Suatu class yang
mempunyai class turunan dinamakan parent class atau base class. Sedangkan class
turunan itu sendiri seringkali disebut subclass atau child class.
Dalam dunia riil, suatu
entitas turunan dapat mewarisi apa-apa yang dipunyai dari entitas induknya.
Misalkan saja antara entitas Bapak dan entitas Anak. Entitas anak dapat
mewarisi apa-apa yang dipunyai oleh entitas Bapaknya. Demikian juga dalam
konsep inheritance, suatu subclass dapat mewarisi apa-apa yang dipunyai oleh
parent class. Inilah yang terpenting dari konsep inheritance.Karena suatu
subclass dapat mewarisi apa-apa yang dipunyai oleh parent class-nya, maka
member dari suatu subclass adalah terdiri dari apa-apa yang ia punyai dan juga
apa-apa yang ia warisi dari class parent-nya. Kesimpulannya, boleh dikatakan
bahwa suatu subclass adalah tidak lain hanya memperluas (extend) parent
class-nya.
Enkapsulasi /
Pembungkusan (Encapsulation)
Enkapsulasi
merupakan suatu cara pembungkusan data dan method yang menyusun suatu kelas
sehingga kelas dapat dipandang sebagai suatu modul dan cara bagaimana
menyembunyikan informasi detail dari suatu class (information hiding). Dalam
OOP, enkapsulasi sangat penting untuk keamanan serta menghindari kesalahan
permrograman, pembungkus disini dimaksudkan untuk menjaga suatu proses program
agar tidak dapat diakses secara sembarangan atau di intervensi oleh program
lain. Konsep enkapsulasi sangat penting dilakukan untuk menjaga kebutuhan
program agar dapat diakses sewaktu-waktu, sekaligus menjaga program tersebut.
Dua hal yang mendasar dalam enkapsulasi yakni Information hiding dan Interface
to access data.
Sebelumnya
kita dapat mengakses anggota class baik berupa atribut maupun method secara
langsung dengan menggunakan objek yang telah kita buat. Hal ini dikarenakan
akses kontrol yang diberikan kepada atribut maupun method yang ada di dalam
class tersebut adalah 'public'. Kita dapat menyembunyikan informasi dari suatu
class sehingga anggota class tersebut tidak dapat diakses dari luar, caranya
adalah hanya dengan memberikan akses kontrol 'private' ketika mendeklarasikan
atribut atau method proses ini disebut dengan information hiding.
Jika
kita telah melakukan information hiding terhadap suatu atribut pada suatu
class, lalu bagaimana cara melakukan perubahan terhadap atribut yang kita
sembunyikan tersebut, caranya adalah dengan membuat suatu interface berupa
method untuk menginisialisasi atau merubah nilai dari suatu atribut tersebut proses
ini disebut dengan information hiding.
Sumber Refrensi
Tidak ada komentar:
Posting Komentar