Implementasi konsep encapsulation

|

Encapsulation merupakan salah satu konsep yang sangat penting dalam pemrograman berorientasi obyek.
Konsep dasarnya sangat sederhana, yaitu memproteksi setiap atribut dari suatu class. Dalam hal ini atribut dari suatu class tidak boleh diakses secara langsung dari luar class. Maka tidak mengherankan bila setiap atribut lalu diberi visibility private. Lalu bagaimana bila suatu saat nilai dari atribut tersebut ingin diakses ataupun ingin diubah? Jawabannya sederhana saja, dengan menggunakan accessor dan mutator. Untuk melakukan akses terhadap nilai dari suatu atribut kita dapat menggunakan accessor, sedangkan untuk menlakukan pengubahan terhadap nilai dari suatu atribut kita dapat menggunakan mutator. Untuk lebih jelasnya dapat melihat contoh sederhana berikut ini.

//class dengan nama Kemeja
class Kemeja {
//atribut warna bertipe data String
private String warna;
//mutator untuk atribut warna
public void setWarna(String warna) {
this.warna = warna; //penggunaan kata kunci this
}
//accessor untuk atribut warna
public String getWarna() {
return warna;
}
}

Accessor secara konvensi akan selalu diawali dengan kata get dan diikuti dengan nama atribut yang akan diakses. Oleh karenanya accessor seringkali dikenal dengan nama getter.
Sedangkan mutator secara konvensi akan selalu diawali dengan kata set dan diikuti dengan nama atribut yang akan diubah nilainya. Oleh karenanya mutator seringkali dikenal dengan nama setter.
Pada setter seringkali juga digunakan kata kunci this. Penggunaan kata kunci this pada setter ini dibutuhkan ketika ada kesamaan antara nama parameter yang digunakan dengan nama atribut yang akan diubah nilainya. Kata kunci this digunakan untuk membedakan antara nama atribut dengan nama parameter.
Lalu apa konsekuensi dari penerapan encapsulation ini? Konsekuensinya sederhana saja. Misalkan kita akan membuat suatu objek dari class Kemeja.

Kemeja kemejaku = new Kemeja();

Maka ketika kita ingin memberi nilai "hijau" pada atribut kemejaku, kita tidak bisa melakukan hal semacam ini

kemejaku.warna = "biru";

Mengapa? Karena visibility dari atribut warna adalah private sehingga atribut tersebut tidak dapat diakses dari luar class. Yang dapat kita lakukan adalah dengan menggunakan setter seperti berikut ini

kemejaku.setWarna("biru");

Dan bila kita ingin mencetak nilai atrubut warna, kita dapat melakukannya dengan cara

System.out.println(kemejaku.getWarna());

Sederhana sekali khan penerapan dari konsep encapsulation ini?
Bagi Anda yang baru memulai mempelajari konsep pemrograman berorientasi objek teruslah semangat mempelajarinya karena Anda akan banyak sekali menemui konsep-konsep menarik di dalamnya :)

Prison Break

|

Film serial yang satu ini layak diacungi jempol. Aku baru saja menamatkan session pertama dari serial menarik ini. Kisahnya benar-benar sangat menarik sekali bagiku. Bagaimana menyelamatkan seseorang untuk lolos dari penjara dengan penjagaan yang sangat ketat. Dalam kisah ini sang tokoh (Michael Scofield) digambarkan sebagai sosok yang sangat genius dalam menyusun suatu perencanaan. Sosok yang sangat detail dan planner sejati. Tetapi di balik kejeniusannya tokoh ini pun harus mengakui bahwa tidak semua hal dapat selalu berjalan sesuai dengan apa yang direncanakan. Ada beberapa faktor eksternal yang acapkali memaksa dirinya untuk melakukan manuver dan pembelokkan terhadap rencana yang telah disusun sebelumnya. He3.. benar-benar sosok yang inspiratif bagiku :)

Network Health Checklist

|

01.Shared Ethernet segments are not saturated (no more than 40 percent network utilization)
02.Shared Token Ring segments are not saturated (no more than 70 percent network utilization)
03.WAN links are not saturated (no more than 70 percent network utilization)
04.The response time is generally less than 100 milli seconds
05.No Segments have more than 20 percent broadcast / multicast
06.No segments have more than ono CRC error per million bytes of data
07.On Ethernet segments, less than 0.1 percent of the packets result in collisions
08.On Token Ring segments, less than 0.1 percent of the packets are soft errors, not related to ring insertion
09.On FDDI segments, the has been no more than one ring operation per hour related to ring insertion
10.The CISCO routers are not over-utilized (5 minute CPU utilization at no more than 75 percent)
11.No more than 100 output queue drops in an hour on any CISCO router
12.The number of input queue drops has not exceeded more than 50 in an hour on any CISCO router
13.The number of buffer misses has not exceeded more than 25 in any hour any CISCO router
14.The number of ignored packets has not exceeded more than 10 in an hour on any interface on a CISCO router

Meine Freizeitaktivität

|

Von Montag bis Freitag habe ich nur wenig Freizeit, aber am Samstag und am Sonntag habe ich mehr Freizeit. In meiner Frezeit mache ich meine Hobbys, zum Beispiel Film sehen, Novelle lesen, Nintendo DS spielen, Musik hören, Sudoku machen, und Deutschhausaufgabe machen. Ich sehe gern Film. Ich habe viel FilmDVD. Fast jedes Wochenende kaufe ich FilmDVD ein. Musik hören ist auch mein Hobby. Ich höre am liebsten Intrumentall-und Jazz Musik.

Meine Familie

|

Ich komme aus einer kleinen Familie. Mein Vatter ist Angestellter von Beruf und meine Mutter ist Hausfrau. Jetzt leben meine Eltern in Cirebon. Ich habe nur einen Bruder. Mein jüngerer Bruder arbeitet als Ingenieur bei Siemens und jetzt lebt er in Jakarta.

Persepsi Unik tentang Marah

|

Horee... aku lulus ujian Start Deutsch 1 :) tapi nilainya masih kurang memuaskan. Aku hanya mendapatkan nilai 78 dari total 100 points. He3.. seperti dugaanku sebelumnya, permasalahan utamaku ada di listening. Harus rajin2 nonton film berbahasa jerman nich.
Oh ya, di sela-sela waktu break di Goethe kemarin, ada salah seorang kawanku yang menyatakan suatu statement menarik berkenaan dengan marah. Menurut kawanku pada dasarnya seseorang ketika marah bukanlah kepada orang lain melainkan kepada dirinya sendiri. Seseorang marah ketika dia menyadari adanya kekurangan dalam dirinya yang bisa saja hanya diketahui oleh dirinya sendiri. Seseorang marah karena menyadari adanya sesuatu pada dirinya yang tidak disukainya. Padahal yang paling mengenal diri kita adalah Tuhan (kalau memang masih mempercayai eksistensi Tuhan) dan dirinya sendiri. Di sini dirinya akan berusaha menutupi kekurangan-kekurangan tersebut dan bisa jadi dilakukan upaya-upaya kamuflase dan penipuan terhadap diri sendiri. Tetapi pada kenyataannya seberapa pun dirinya berusaha untuk menutupi kekurangannya, dirinya akan selalu menyadari keberadaan dari upaya-upaya kamuflase yang sedang dilakukannya tersebut dan ini akan memunculkan suatu bentuk tekanan tersendiri. Nah titik ketika seseorang tidak dapat menerima dirinya sendiri itulah yang menyebabkan munculnya kemarahan. Maka tidak heran bila yang muncul dari situasi semacam ini adalah suatu kondisi penolakan diri yang cukup kuat. Menolak eksistensi dirinya, menolak nilai dirinya, bahkan menolak dunia yang menopang dirinya. Dari situ muncullah berbagai tindakan2 yang bisa jadi berujung ke arah vandalisme, rasisme, dan berbagai aksi destruktif lainnya.
Peserpsi yang sangat menarik :)

Hari ini

|

Hari ini aku bangun pagi seperti biasanya. Begitu bangun aku coba latihan QRAK, kebetulan ada beberapa teknik baru yang diajarkan oleh Mas Rony sewaktu lokakarya kemarin. Sejauh aku mempelajari QRAK hasilnya sangat positif, setidaknya banyak hal baik yang bisa aku petik terutama sekali dalam tataran karakter dan mental. He3.. memperbaharui karakter bukanlah perkara mudah, tetapi dengan melatih QRAK cukup banyak karakterku yang berubah ke arah yang lebih baik :)
Setelah latihan aku tertidur lagi. Rasanya tidurku semalam sudah cukup secara kuantitas tetapi kualitas tidur yang rasanya agak bermasalah. Bagitu bangun untuk kedua kalinya aku langsung mandi dan sarapan pagi lalu dilajutkan mengkoreksi hasil UTS kelas Pemrograman Berorientasi Objek. Hasilnya cukup mengecewakan. Hanya beberapa mahasiswa saja yang memperoleh nilai baik. Sedih rasanya padahal aku sudah mempersiapkan setiap materi dengan sangat detail dan mengajarkannya dengan sangat sistematis. Pastilah ada yang salah dalam hal ini. Semoga aku bisa memperoleh pencerahan segera untuk memecahkan fenomana ini. Selesai mengkoreksi aku langsung berangkat ke kampus. Hari ini ada 1 kelas yang harus aku ajar dan setumpuk pekerjaan2 administrativ seorang sekretaris jurusan yang harus aku selesaikan.
SEMANGAT!!!
Sore hari nanti aku akan menghadiri kelas Bahasa Jerman di Goethe Institut. Tidak terasa, saat ini aku sudah duduk di kelas tingkat A2. Oh ya hari ini juga aku akan mengambil hasil ujian Start Deutsch 1. Semoga aja hasilnya memuaskan.
He3.. benar2 banyak berharap nich agar bisa segera stdi lanjut di Duetschland :)