Selasa, 02 Oktober 2012

Membuat Karakter Animasi dengan BLENDER


Kali ini saya akan sharing mengenai cara membuat Karakter Animasi menggunakan Software Blender. Sebelumnya saya akan menjelaskan sedikit tentang blender. Blender adalah perangkat lunak untuk grafis 3 dimensi yang gratis dan populer di bidang Desain Grafis. Perangkat lunak ini juga memiliki fitur untuk membuat konten 3D, Blender juga dapat digunakan dalam berbagai kegiatan multimedia seperti mengedit video, membuat game, animasi, compositing, film animasi 3D dan lainnya yang berhubungan dengan animasi 3D. Perangkat lunak ini berlisensi GPL dan kemudian kode sumbernya tersedia dan dapat diambil siapa saja.

Oke langsung saja buka Software Blendernya, jika sudah maka akan masuk tampilan blendernya dan view port akan ada object default yaitu berbentuk kubus.


Disini saya membuat karakter yang berbentuk Penyu. Yang bagian badannya saya bentuk dari mesh-mesh/object-object yang sudah ada. Ya langsung saja karena saya tidak menggunakan object kubus maka object saya delete dengan cara klik kanan terlebih dahulu pada object yang ingin dihapus kemudian klik x pada keyboard. Lalu akan muncul pilihan Delete lalu klik kiri maka object yang tadi dipilih akan terhapus.


Jika sudah kita akan memulai membuat bagian kepala menggunakan object/Mesh UV Sphere. Cara menambahkannya menu add pada menu bar lalu pilih Mesh kemudian pilih UV Sphere.

Jika sudah object yang dipilih akan muncul pada Viewportnya.


Selanjutnya ketahap membentuk kepalanya, disini saya membentuk sesuai keinginan saya. Pada membentuk kepala tersebut saya menggunakan kombinasi Scale dan Translate. Sebelum melakukan edit object kita harus mengklik tombol tab pada keyboard untuk bisa mengedit object. Kemudian saya mencoba melancipkan bagian dagu. Untuk memilih bagian yang diinginkan saja kita dapat men-selectnya dengan cara klik “tab” lalu klik kanan pada object yang dipilih lalu jika ingin memperbesar atau menambah selectnya dengan cara klik “Shift”.

Jika sudah bentuk seperti gambar di atas. Dalam menselect bagian dari object kita bisa menselect dengan tiga cara yaitu menselect titik, garis  dan 1 sisi. Untuk mengganti cara menselect kita bisa lihat pada bagian bawah pada blender yang akan muncul apabila kita mengklik tombol tab pada keyboard.


Selanjutnya saya membuat bentuk badanya dengan cara tambah lagi mesh UV Sphere. Saya akan membentuk seperti tempurung penyu dengan cara select ½ bagian  apabila kita ingin menselect bagian dari objectnya lumayan banyak kita tidak usah menselect 1 persatu kita bisa menggunakan tombol “B” pada keyboard. Tombol B akan menselect sesuai area yang kita buat. Dengan cara klik tab lalu klik Tombol “A” untuk mendeselect lalu klik B dan buat area yang anda mau edit.

Jika sudah seperti diatas lalu lepas. Jika sudah perkecil pada bagian depan sehingga bagian belakang akan lebih besar. Maka akan berbentuk seperti tempurungnya untuk mempercepat gunakan shortkey “S” yaitu untuk scale.

Selanjutnya saya membuat bahu lengannya tambahkan Mesh UV Sphere. Lalu kecilkan sesuai gambar kemudain letakan pada bagainnya. Jika sudah makan bahu 1 bagian sudah jadi untuk membuat 1 bagian yang lain anda tidak perlu membuat object lagi. Anda bisa mengcopy object tersebut dengan cara klik tombol “Shift” dengan “D” maka object yang dipilih akan tercopy. Dan pindahkan object tersebut sesuai sumbu Y agar sisi kiri dank an seimbang dengan cara klik saja tombol Y pada saat memindahkan.

Jika sudah buat telapak tangannya. Disini saja juga memakain Mesh UV Sphere lalu saya edit-edit sehingga membentuk telapak tangan  yang mempunyai 3 kuku.
Lalu letakan pada bagiannya.

Kemudian saya ingin menambahkan kaca mata. Caranya select saja pada bagian matanya lalu duplikat kemudian pindahkan pada sumbu z kedepan. Sehingga akan membentuk seperti kaca mata.

Lalu pada sisi ujung bagian kaca mata edit dengan cara select garis pada ujung nya kemudian rapatkan pada kepalanya sehingga akan terlihat kacamata tergantung pada kepalanya.

Jika suda buat kakinya dengan object UV Sphere juga lalu klik tab dan pada bagian kiri blender ada tulisan Loop Cut and Slide. Jadi kita dapat memotong bagian dari object.

Jika sudah pilih bagiannya pindahkan dengan mengklik g lalu pindahkan sesuai sumbu y pada tambilan View. Agar object membentuk paha kaki.


Untuk membuat bagian telapak kakinya saya juga menggunakan Mesh UV Sphere. Lalu edit objectnya seperti gambar dibawah.
Jika sudah letakkan pada tempatnya.

Kemudian saya menambahkan ekor dengan cara pilih saja bagian pada belakang lalu drag hingga membentuk seperti ekor.

Kemudain saya menambahkan pipinya menggunakan object UV Sphere agar terlihat lucu dan menarik.

Untuk menghaluskan object yang kita buat klik smooth pada bagian kiri blender.


Jika sudah di beri warna dan untuk melihat hasilnya kita menggunakan perintah Render atau klik F12.
Sekian tutorial dari saya. Karena saya masih dalam tahap belajar mohon maaf bila ada salah. Terima Kasih ^_^


Semoga Tutorialnya Bermanfaat ^_^


REVIEW SOFTWARE : BLENDER


Jika dahulu bikin animasi membutuhkan aplikasi yang mahal dengan tingkat kerumitan yang tinggi, kini hal tersebut bisa diatasi dengan hadirnya Blender. Software Open Source yang di dirikan oleh Ton Roosendaal ini menawarkan penggunaan yang lebih mudah dan tidak berbayar alias GRATIS. Pengertian mudah di sini memang bukan berarti segampang membalikkan kedua tangan, tapi tetap saja, jika dibandingkan dengan software terdahulu yang membutuhkan skill tinggi, Blender menawarkan penggunaan yang lebih mudah.


Pengembang                    : Blender Foundation
Awal Rilis                           : 1995
Versi Terbaru                  : 2.63a / May 10, 2012
Bahasa Pemrograman  : C, C++ and Python
Sistem Operasi                 : FreeBSD, Linux, Mac OS X and Microsoft Windows
Tipe                                      : 3D computer graphics software
Lisensi                                 : GNU General Public License v2 or later
Website                              : www.blender.org


Blender merupakan software pembuat grafis animasi 3D andalan pengguna Linux yang cukup bagus. Fiturnya lengkap, ringan, update-nya cepat, serta memiliki komunitas terbuka yang akan membantu para pengguna di seluruh dunia untuk saling bertukar pikiran. Hal inilah yang membuatnya makin menarik untuk dicoba. Apalagi kini ia telah hadir bagi sistem operasi lainnya seperti Windows, Mac OS, hingga Solaris.
Selain untuk membuat konten 3D, Blender juga dapat digunakan dalam berbagai kegiatan multimedia seperti mengedit video, membuat game, animasi, compositing, dan lainnya yang berhubungan dengan animasi 3D. Bahkan ada komunitas yang telah berhasil membuat sebuah film animasi 3D secara utuh dengan hanya menggunakan Blender.


Blender memberikan fitur – fitur utama sebagai berikut :

  1. Tampilan yang user friendly dan tertata rapi.
  2. Kelengkapan tools untuk membuat objek 3D yang lengkap meliputi modeling, UV mapping, texturing, rigging, skinning, animasi, particle dan simulasi lainnya, scripting, rendering, compositing, post production dan game creation.
  3. Cross Platform, dengan uniform GUI dan mendukung semua platform. Blender 3D bisa anda gunakan untuk semua versi windows, Linux, OS X, FreeBSD, Irix, Sun dan sistem operasi yang lainnya.
  4. Kualitas arsitektur 3D yang berkualitas tinggi dan bisa dikerjakan dengan lebih cepat dan efisien.
  5. Dukungan yang aktif melalui forum dan komunitas.
  6. File Berukuran kecil.
  7. Gratis dan Open source.

Adapun keunggulan Interface pada Blender secara umum adalah sebagai berikut :

  1. Revolusioner  yang  tidak  tumpang  tindih  dan  non-blocking user interface memberikan  alur kerja tak tertandingi.
  2. Fleksibel  dan  bisa  diatur  tata  letak  jendela  dengan  layar  setup  sebanyak  yang Anda suka dengan dukungan terjemahan internasional.
  3. Setiap jendela ruang dapat dengan mudah beralih ke jendela apapun jenis (kurvaeditor, NLA, tampilan 3D dll)
Spesifikasi Hardware



Website terkait :

KUMPULAN HASIL KARYA TERBAIK BLENDER 3D



^_^ Semoga bermanfaat reviewnya ^_^

                   SUMBER                            SUMBER                          SUMBER                           SUMBER


Sabtu, 29 September 2012

REVIEW GAME : POINT BLANK

Siapa yang tak mengenal game online yang satu ini, mulai dari anak-anak sampai orang dewasa memainkannya. Berikut reviewnya :

Point Blank


Pengembang                       :  Zepetto
Penerbit                               :  Zepetto
Sistem Operasi                   :  Microsoft Windows
Tanggal rilis                        :  Juni 2009
Genre                                   :  FPS
Mode                                    :  Pemain tunggal / Multiplayer
Media digital/distribusi    :  Unduh
Kebutuhan sistem             :  Daring (dalam jaringan)

Point Blank adalah sebuah permainan komputer ber-genre FPS yang dimainkan secara online. Permainan ini dikembangkan oleh Zepetto dari Korea Selatan dan dipublikasikan oleh NCSoft. Selain di Korea Selatan, permainan ini mempunyai server sendiri di beberapa negara seperti Thailand, Rusia, Indonesia, Brasil, Turki,Amerika Serikat, dan Peru. Di Indonesia, permainan ini dikelola oleh PT. Kreon melalui Gemscool. Point Blank berkisah tentang perseteruan antara Free Rebels dan pemerintah yang dalam hal ini adalah Counter Terrorist Force (CT-Force).


  • Aspek Realitas kejadian acak :
  1. Pergerakan angin secara dinamis dan acak
  2. Arus kendaraan bermotor seperti mobil dan tank yang bergerak secara dinamis
  3. Lampu lalu lintas di jalan raya yang menyala secara acak
  4. Orang selain pemain yang berada pada game ini berjalan secara dinamis dan acak
  • Aspek Realitas sebab akibat :
  1. Ketika mengendarai mobil atau tank, jika menabrak sesuatu maka kendaraan tersebut akan rusak dan terpental
  2. Ketika menembak sebuah kendaraan secara terus-menerus, maka kendaraan tersebut akan terbakar dan meledak seketika
  3. Ketika menembak suatu objek tertentu dalam game dengan menggunakan senjata berat (bazooka atau granat), maka objek tersebut akan hancur
  4. Ketika ada mobil yang menabrak orang atau suatu objek maka yang ditabrak akan terpental
  • Aspek Realitas fakta :
  1. Jenis-jenis senjata yang ada pada game ini mengadopsi dari senjata-senjata api yang ada di dunia nyata
  2. Jenis- jenis perlengkapan seperti helm, rompi dan lain-lain mengadopsi dari perlengkapan yang ada di dunia nyata
  3. Bentuk dan jenis kendaraan bermotor seperti mobil dan tank mengadaptasi dari dunia nyata
  • Aspek Realitas fisika :
  1. Jika pemain ketika sedang jatuh bebas maka arah jatuh dan gaya gravitasi menggunakan prinsip-prinsip dan perhitungan fisika
  2. Jika pemain menembakkan peluru atau melemparkan granat maka arah peluru melesat dan lintasan luncuran granat menggunakan prinsip fisika
  3. Lintasan terpentalnya seseorang yang ditabrak sesuatu menggunakan prinsip-prinsip fisika
  • Aspek Realitas audio visual :
  1. Ukuran dan bentuk objek-objek yang mengadaptasi dari kondisi sebenarnya, seperti bangunan, bandara, lampu, jalan, tempat sampah, pom bensin, dan lain-lain
  2. Suara dubbing asli mengisi suara dari orang yang ada pada game
  3. Suara desiran kendaraan tank, tembakan dari senjata api, ledakan, dan lain-lain yang mengadaptasi dari suara aslinya
Mode Permainan

Point Blank memiliki 9 mode permainan, yaitu:
  • Death Match
Bunuh pemain musuh hingga skor tim-mu mencapai nilai yang ditentukan atau berusahalah menjadi tim dengan skor terbanyak saat waktu permainan habis.
  • Bomb Mission
Tujuan tim Free Rebels adalah untuk meledakkan area yang disebut bombsite dengan C4, sementara tujuan tim CT-Force adalah mencegah tim Free Rebels meledakkan bombsite.
  • Destroy Mission
Hancurkan objek yang menjadi target dalam mode ini.
  • Eliminate
Habisi semua musuh yang ada untuk memenangkan ronde.
  • AI Mode
Dalam mode ini, para pemain diharuskan untuk melawan musuh yang dikendalikan oleh komputer (AI). Mode AI terdiri dari Level 1 hingga Level 10, dimana semakin tinggi levelnya, semakin tinggi pula tingkat kesulitan musuh AI. Mode ini telah dihapus dari Point Blank Indonesia sejak 21 April 2010 karena ada bug yang membuat experience dan point yang seharusnya tidak didapat bisa didapat.
  • Shotgun Mode
Hanya senjata tipe shotgun saja yang dapat digunakan dalam mode ini.
  • Sniper Mode
Hanya senjata tipe sniper rifle saja yang dapat digunakan dalam mode ini.
  • Defense Mission
Pertahankan objek yang menjadi sasaran atau menghancurkanya
  • Dino Mode
Bertahan dari serangan dinosaurus dan keluar (escape) melalui pintu yang ada.

Map

  • Death Match & Eliminate
  1. Burning Hall
  2. Training Camp
  3. Kick Point
  4. Midninght Zone
  5. MStation
  6. Crackdown
  7. Up Town
  8. Portacaba
  9. DSquad
  10. Saint Mansion
  11. Eastern Road
  12. Red Rock
  13. Old Library
  14. Mini Indonesia (Desert Camp)
  15. Luxville
  16. Face Rock
  17. Safari
  • Bomb Mission
  1. Luxville
  2. Blow City
  3. Sentry Base
  4. Storm Tube
  5. Downtown
  6. Midtown
  7. Shopping Center
  8. Outpost
  9. Hospital
  10. Midtown
  11. Mall
  • Destroy Mission
  1. Breakdown
  2. Helispot
  3. Giran
  • Defense Mission
  1. Black Panther
  • Dino Mode
  1. Breeding Nest
  2. Uptown
Karakter

Point Blank memiliki total 9 karakter dan terbagi 4 untuk ct-force,5 untuk free rebels. Masing-masing karakter memiliki penampilan dan latar belakang yang berbeda-beda.

  • CT-Force
  1. Acid Pool (Paul)
  2. Keen Eyes (Ayse)
  3. Leopard
  4. Hide
  • Free Rebels
  1. Red Bulls
  2. Tarantula
  3. D-Fox
  4. Viper Red
  5. Buffalo


Title




Salah satu fitur menarik dari Point Blank adalah Title. Title adalah gelar spesialisasi senjata yang memberi kelebihan jika digunakan yang disesuaikan dengan tipe senjata yang digunakan. Title memiliki efek yang berbeda-beda, mulai dari meningkatkan kecepatan menembak namun meningkatkan efek rekoil senjata, meningkatkan akurasi namun mengurangi kecepatan bergerak, dan lain-lain. Title yang sejenis (misalnya title Assaulter Private dan Senior Assaulter) tidak dapat digunakan bersamaan.

Grade / Level / Pangkat


Senjata
Dalam PB dikenal senjata utama yang akan digunakan terus menerus selama permainan :

  • Assault Riffle         :  K2, AK-47, M4A1, SG 550, AK-Sopmod, dll
  • Sub Machine Gun  :  K1, MP7, Spectre, P90, Dual Kriss-V, dll
  • Shotgun                 : 870 MCS, SPAS-15, JackHammer, dll
  • Sniper                   :  SSG-69, SVD Dragunov, L115A1, dll

Spesifikasi Komputer
* CPU Pentium4 2.4 Ghz atau Athlon 2500+.
* Memory Ram 512 MB.
* VGA 128 MB.
* Koneksi Internet yang cepat.

Kelebihan :
* Adanya Lv Rank, Fitur Clan, Friendlist, Dan Pangkat.
* Lebih menarik daripada game FPS yang dulu sempat menjadi nomor 1 (Counter Strike)
* Banyaknya Event Yang diselenggarakan oleh Gemscool.
* Grafis yang mendekati realistis dan mendetil.

Kekurangan :
* Seringnya Maintanance.
* Masih Banyak BUG yang terdapat di Game Point Blank.
* Room Master (RM) membuat kecewa pemain apabila si RM LAG.

Kunjungi situs resmi'a untuk mendownload dan mengetahui lebih tentang game ini di http://pb.gemscool.com/




Minggu, 17 Juni 2012

Web E-Commerce


Web E-Commerce

Pada tugas softskill kali saya menggunakan sebagai contoh  web e-commerce mitre.co.id

Mitre.co.id adalah bisnis online store yang bergerak di bidang penjualan alat-alat atau perlengkapan serta pakaian dan tas olahraga. Penjualan ini didukung juga oleh berbagai macam outlet atau toko olahraga dari Mitre.co.id yang tersebar luas di beberapa kota besar di Indonesia maupun di luar negeri sehingga dapat memudahkan pengiriman barang maupun pembelian secara langsung. Mitre didukung juga oleh website yang tidak hanya berfungsi untuk memberikan informasi akan tetapi juga berfungsi sebagai tempat bertransaksi, sehingga memberikan kemudahan kepada calon pembeli atau pelanggan karena mereka tidak harus langsung datang ke toko tapi bisa membeli dengan transaksi secara online. Pada situs mitre.co.id memasang harga barang-barang perlengkapan olahraga dalam segala macam jenis. Hal ini membuat para calon pembeli dapat membandingkan dengan tempat lainnya sehingga bisa menentukan pilihan yang tepat. Yang perlu diingat bila kita membeli atau bertransaksi di website mitre ini barang dijamin asli buatan dari mitre sehingga kualitas dan kekuatan sudah dapat dipercaya.
target market : semua orang dan semua usia yang mencintai olahraga

 
Produk : Perlengkapan Olahraga

Price : Harga tertera pada halaman web



            STANDAR TEKNOLOGI E-COMMERCE

Di samping berbagai standar yang digunakan di Intenet, e-commerce juga menggunakan standar yang digunakan sendiri, umumnya digunakan dalam transaksi bisnis-ke-bisnis. Beberapa diantara yang sering digunakan adalah:

1. Electronic Data Interchange (EDI)
Dibuat oleh pemerintah di awal tahun 70-an dan saat ini digunakan oleh lebih dari 1000 perusahaan Fortune di Amerika Serikat, EDI adalah sebuah standar struktur dokumen yang dirancang untuk memungkinkan organisasi besar untuk mengirimkan informasi melalui jaringan private. EDI saat ini juga digunakan dalam corporate web site.
2. Open Buying on the Internet (OBI)
Adalah sebuah standar yang dibuat oleh Internet Purchasing Roundtable yang akan menjamin bahwa berbagai sistem e-commerce dapat berbicara satu dengan lainnya. OBI yang dikembangkan oleh konsorsium OBI http://www.openbuy.org/ didukung oleh perusahaan-perusahaan yang memimpin di bidang teknologi seperti Actra, InteliSys, Microsoft, Open Market, dan Oracle.
3. Open Trading Protocol (OTP)
OTP dimaksudkan untuk menstandarisasi berbagai aktifitas yang berkaitan dengan proses pembayaran, seperti perjanjian pembelian, resi untuk pembelian, dan pembayaran. OTP sebetulnya merupakan standar kompetitor OBI yang dibangun oleh beberapa perusahaan, seperti AT&T, CyberCash, Hitachi, IBM, Oracle, Sun Microsystems, dan British Telecom.
4. Open Profiling Standard (OPS)
Sebuah standar yang di dukung oleh Microsoft dan Firefly http://www.firefly.com/. OPS memungkinkan pengguna untuk membuat sebuah profil pribadi dari kesukaan masing-masing pengguna yang dapat dia share dengan merchant. Ide dibalik OPS adalah untuk menolong memproteksi privasi pengguna tanpa menutup kemungkinan untuk transaksi informasi untuk proses marketing dsb.
5. Secure Socket Layer (SSL)
Protokol ini di disain untuk membangun sebuah saluran yang aman ke server. SSL menggunakan teknik enkripsi public key untuk memproteksi data yang di kirimkan melalui Internet. SSL dibuat oleh Netscape tapi sekarang telah di publikasikan di public domain.
6. Secure Electronic Transaction (SET)
SET akan mengenkodekan nomor kartu kredit yang di simpan di server merchant. Standar ini di buat oleh Visa dan MasterCard, sehingga akan langsung di dukung oleh masyarakat perbankan. Ujicoba pertama kali dari SET di e-commerce dilakukan di Asia.
7. Truste
Adalah sebuah partnership dari berbagai perusahaan yang mencoba membangun kepercayaan public dalam e-commerce dengan cara memberikan cap Good Housekeeping yang memberikan approve pada situs yang tidak melanggar kerahasiaan konsumen.




Tips Aman E-Commerce

E-commerce atau belanja lewat fasilitas elektronik, memang menjanjikan berbagai keuntungan. Selain tidak perlu diribetkan dengan urusan transportasi, antara pembeli dan penjual tidak perlu menghabiskan waktu yang tidak perlu.

Namun belanja lewat e-commerce juga memerlukan perhatian dan kewaspadaan ekstra, salah satunya belanja on-line. Agar merasa aman dan tidak tertipu lewat transaksi on-line, berikut ini beberapa tips aman dalam belanja lewat e-commerce, yaitu:


•    Lihat komentar.
Lihat komentar dari orang-orang yang telah membeli lewat toko on-line tersebut. Jika komentarnya bagus-bagus dan masuk akal, berarti toko tersebut recomended seller. Googling juga produk yang akan dibeli, kalau harga yang ditawarkan kelewat mahal atau murah, lebih baik tunda dulu.

•    Sesuai.
Sesuaikan dulu antara foto barang yang dipajang dengan barang yang dijual. Minta dulu foto asli barangnya, apabila penjual tidak mau memberikan foto barang asli dengan alasan pre order, lebih baik minta perjanjian dulu. Misalnya pembelian batal bila barang tidak sesuai dengan fotonya.

•    Rekening bersama.
Apabila bermaksud membeli barang secara COD atau cash on delievery, sebaiknya ditunda apabila menghawatirkan. Karena sekarang banyak sekali kurir pengantaran yang agak nakal. Lebih baik gunakan rekening bersama. Maksudnya pembeli mentransfer lewat rekening bersama, lalu setelah barang diantar, rekening bersama akan mencairkan uang yang telah ditransfer kepada penjual.

•    Tak pelu pake karu kredit.
Biasanya pembayaran barang via online harus mencantumkan nomor kartu kredit, namun pada saat sekarang, transaksi on-line bisa dibayar melalui fasilitas kartu ATM, salah satunya memanfaatkan clickpay dari salah satu bank terkemuka.

•    Cek total belanjaan.
Apabila bertransaksi lewat toko on-line luar negeri, usahakan total belanjaan tidak melebihi USD 50, karena barang yang dikirim bisa nginep di kantor pos dan pembeli harus membayar bea cukai barang masuk terlebih dahulu.


 Sumber                                                     Sumber                                                Sumber

Minggu, 15 April 2012

Inheritance dan Polimorfisme dalam Bahasa Pemrograman Java

Melanjutkan pembahasan mengenai Pemrograman Berbasis Objek (OOP), kali ini kami akan membahas mengenai Inheritance ( Pewarisan ) dan Pilimorfisme ( Banyak bentuk ) serta contoh program yang mengandung berkaitan dengan keduanya.


  • Inheritance ( Pewarisan )
Pewarisan adalah hubungan antara class dimana dalam satu class ada superclass atau class induk dari class yang lain. Pewarisan menunjuk pada properti dan behaviour yang diterima dari nenek moyang dari class. Ini dikenal juga sebagai hubungan “is-a”. Perhatikan pada hirarki berikut.


SuperHero adalah superclass dari class FlyingSuperHero dan UnderwaterSuperHero. Catatan bahwa FlyingSuperHero “is-a” SuperHero. Sebagaimana juga UnderwaterSuperHero “is-a” SuperHero.

Pewarisan merupakan suatu keuntungan besar dalam pemrograman berbasis object, karena suatu sifat atau method didefinisikan dalam superclass, sifat ini secara otomatis diwariskan dari semua subclasses. Jadi, Anda dapat menuliskan kode method hanya sekali dan mereka dapat digunakan oleh semua subclass. Subclass hanya butuh mengimplementasikan perbedaannya sendiri dan induknya.

Berikut Contoh Programnya : 
//class Person.java  

public class Person {  
  
protected String name;  
protected int age;  
  
public Person(String name, int age) {  
    this.name = name;  
    this.age = age;  
}  
  
public String getName() {  
    return this.name;  
}  
  
public int getAge() {  
    return this.age;  
}  

===================================================================
//class Student.java  
  
public class Student extends Person {  
  
 private String schoolName;  
  
 public Student(String name, int age, String schoolName) {  
     super(name, age);  
     this.schoolName = schoolName;  
 }  
  
 public String getSchoolName() {  
     return this.schoolName;  
 }  
}  

===================================================================
//class Main.java  
  
public class Main {  
  
  public static void main(String[] args) {  
      Person person = new Person("Ainan Nurizzaman", 20);  
      Student student = new Student("Sylvia Syamrotul L", 20, "Universitas Gunadarma");  
  
      System.out.println("Informasi tentang object person : ");  
      System.out.println("Nama : " + person.getName());  
      System.out.println("Umur : " + person.getAge());  
      System.out.println();  
  
      System.out.println("Informasi tentang object student : ");  
      System.out.println("Nama : " + student.getName());  
      System.out.println("Umur : " + student.getAge());  
      System.out.println("Nama Sekolah : " + student.getSchoolName());  
  }  
}   

Output :
Untuk melakukan inheritance di java, kita menggunakan keyword extends. Dalam contoh program diatas class Studentlah yang mengiherit class Person sehingga class Student yang melakakukan extends, dimana dalam pendefinisian class nya menjadi class Student extends Person. Dalam proses inheritance ini subclass bisa mengakses semua field dari super classnya, kecuali yang beratribut private. Akan tetapi superclass tidak bisa mengakses field dari subclass apapun atributnya. Dalam program diatas sudah dicontohkan bahwa method getName dan getAge yang hanya terdapat pada class Person dapat dengan bebas diakses oleh Class turunannya yaitu class Student. Mengenai constructornya adalah sebagai berikut, dalam class person ia membutuhkan dua variable dalam constructornya, yaitu String name, dan int age, dan dalam class student ia membutuhkan 3 variable ketika membuat constructornya yaitu String name, int age, dan String schoolName, dimana dapat kita lihat bahwa 2 dari 3 variabel constructor dari class student sama dengan variable pada class person, maka kita tidak perlu membuatnya lagi, akan tetapi hanya perlu menggunakan keyword “super” untuk memanggil constructor dari superclass.


  • Polimorfisme
Polimorfisme adalah kemampuan dari sebuah object untuk membolehkan mengambil beberapa bentuk yang berbeda. Secara harfiah, “poli” berarti banyak sementara “morph” berarti bentuk. Menunjuk pada contoh sebelumnya pada pewarisan, kita lihat bahwa object SuperHero dapat juga menjadi object FlyingSuperHero atau object UnderwaterSuperHero.

Berikut Contoh Programnya :

public class Orang {
    public String nama;
    public String alamat;


    //Constructor...
    public Orang(){
        }


    public Orang(String nama) {
        this.nama = nama;
    }
    public Orang(String nama,String alamat){
        this.nama=nama;
        this.alamat=alamat;
    }


    //accessor method mengembalikan nilai
public String getName(){
        return nama;
        }


    //mutator methode untuk mengubah nilai dari instance.
public void setName(String nama){
        this.nama = nama;
       }
}
===================================================================
public class Mahasiswa extends Orang{
    String jeniskelamin;

    public Mahasiswa() {

     //super digunakan untuk memanggil constructor terdekat pada kelas Orang.

        super("Sylvia");
    }

    //overidde methode dari kelas Orang..
    public String getName(){
        return nama;
        }
    public void setName(String nama){
        this.nama = nama;
        }
 }
===================================================================
public class Pekerja extends Orang{

   public Pekerja() {

        super("Ainan");
    }

    //overide dari kelas Person

    public String getName(){

        return nama;
        }
    public void setName(String nama){

        this.nama = nama;
        }
}
===================================================================
public class CallOrang {
public static void main(String[] args){

        //contoh polimorfisme di java

        Orang call;

        Mahasiswa m = new Mahasiswa();

        Pekerja n = new Pekerja();
        //memanggil dari kelas mahasiswa

        call = m;

        String smp = call.getName();

        System.out.println("aku dari bagian Mahasiswa : " + smp);

        //memanggil dari kelas pekerja

        call = n;

        String sma = call.getName();

        System.out.println("aku dari bagian Pekerja : " + sma);

       }
       }

Output :



JENI (JAVA EDUCATION NETWORK INDONESIA)


Kamis, 12 April 2012

Enkapsulasi Dalam Bahasa Pemrograman Java


Melanjutkan postingan kami sebelumnya mengenai Pemrograman Terstruktur dan Bahasa Pemrograman Berbasis Objek. Kali ini kami akan membahas tentang enkapsulasi atau lebih dikenal dengan istilah pengkapsulan. Jadi Enkapsulasi adalah suatu cara untuk menyembunyikan informasi detail dari suatu class. Dua hal yang mendasar dalam enkapsulasi yakni :

  • Information hiding


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.

  • Interface to access data


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.

Berikut Contoh Program Pengkapsulan pada Java :

import java.*;
import java.io.*;
import javax.swing.JOptionPane;
//Mengambil package dari java library
public class Enkapsulasi{
/*Main Method*/
    public static void main (String[] args){
    //Membuat dari kelas hitungGaji untuk suatu-
    //pegawai, dan memanggil method-methodnya
Penggajian pegawai = new Penggajian();
        double sg;
        String Nilai;

        Nilai = JOptionPane.showInputDialog("Masukkan Jumlah Gaji : ");
       
        sg = Double.parseDouble(Nilai);
        
         pegawai.setGaji(sg);
         pegawai.hitungGaji();
         System.out.println("\nBesar Gaji Bersih : RP. "+ pegawai.getGajiBersih());

   }

}

/*Kelas Penggajian*/
class Penggajian {
//Mendeklarasikan variabel-variabel internal kelas Penggajian.
   
    private double gajipokok, gajiSetelahPajak,pajakgaji;
    public double gajiBersih;
    private double potongan = 100000;

//Method untuk mengeset variabel internal gaji pokok.
public void setGaji(double  gaji){

        gajipokok = gaji;
        
    }

//Method untuk menghitung gaji bersih.
public void hitungGaji(){
        gajiSetelahPajak = gajipokok - (0.1 * gajipokok);
        pajakgaji = (gajipokok*0.1);
        gajiBersih = gajiSetelahPajak - potongan;

        System.out.println("\nBesar Pajak Gaji : RP. "+ pajakgaji);
        System.out.println("\nBesar potongan Gaji : RP. "+ potongan);
    }

//Method yang mengembalikan gaji Pokok (Gaji sebelum ada pengurangan)
public double getGajipokok(){
        return gajipokok;

    }

//Method yang mengmbalikan besar gaji bersih
public double getGajiBersih(){
        return gajiBersih;
    }
}

Output Program :

setelah memasukkan jumlah gaji kemudian tekan Enter / klik OK