Ads 468x60px

Senin, 02 Maret 2015

Pengenalan Java Dan Pemrograman Berorientasi Objek


I Wayan Agus Kerta Nugraha / 1404505073
Teknologi Informasi / Teknik / Universitas Udayana
Pemrograman Berorientasi Objek (B)
I Putu Agus Eka Pratama, ST MT



JAVA


Apakah Java itu ? Java merupakan bahasa pemrograman berorientasi objek yang dikembangkan oleh Sun Microsystem, suatu perusahaan yang terkenal dengan Workstation UNIX high-end.
Sejak dirilis pada tahun 1995, bahasa pemrograman Java dengan cepat memperoleh popularitas di kalangan para pemrogram. Keberhasilan ini disebabkan teknologi baru yang diperkenalkan Sun Microsystems yaitu Java Virtual Machine (JVM), yang memungkinkan sebuah aplikasi dijalankan di atas platform apa saja sepanjang pada mesin tersebut dipasang JVM.
Program yang dihasilkan dengan bahasa Java dapat berupa applet (aplikasi kecil yang berjalan di atas web browser) maupun berupa aplikasi mandiri yang dijalankan dengan program Java Interpreter. Contoh program yang ditulis dengan bahasa Java adalah HotJava yang berupa sebuah web browser.

Karakteristik Java
Java adalah sebuah bahasa pemrograman berorientasi obyek murni. Jadi program – program Java berada dalam sebuah struktur kelas – kelas dan obyek – obyek. Pada dasarnya sintaks pada bahasa Java mirip dengan sintaks pada bahasa C atau C++. Java bertipe kuat (strongly-typed). Ini berarti semua tipe data terikat secara statis atau dengan kata lain setiap nama variabel diasosiasikan dengan sebuah tipe data tunggal yang dikenali pada saat kompilasi.
Ciri utama dari program Java adalah :
  • JVM (Java Virtual Machine)
  • Garbage Collection
  • Code Security
Keuntungan dan Kelemahan dari Java
  1. Java merupakan bahasa pemrograman berorientasi objek (OOP).
  2. Memiliki tingkat fleksibilitas yang tinggi dan program Java bersifat modular serta kode dapat digunakan kembali.
  3. Java relatif lebih mudah untuk dipelajari.
  4. Java lebih sederhana, karena telah menghilangkan beberapa fitur dari C++ yang membingungkan dan sukar untuk dipelajari.
  5. Java memiliki kinerja yang tinggi dan handal.
  6. Java dapat dipergunakan sebagai penterjemah sehingga dapat digunakan pada lingkungan komputer jenis apapun tanpa merubah kode program kembali.
  7. Java memiliki tingkat keamanan yang sangat baik.
  8. Multithreading, sehingga program java dapat melakukan beberapa perintah (program) sekaligus.




Pemprograman berorientasi objek (JAVA) 
 
            Dalam orientasi objek, class dah objeck tidak dapat terpisahkan. Pemahaman dasar dalam pemprograman berbasis object ialah harus mengerti apa maksud dari class dan object.
Definisi class dan object hampir sama, namun ada sedikit perbedaan, dan perbedaan itu sangat mempengaruhi keduanya.

Object
Adalah sesuatu yang mempunyai
  • Attribute (informasi yang melekat pada suatu object), dalam bahasa pemograman biasa di sebut properties, data.
  • Behaviour (perilaku), mempunyai method, dalam bahasa pemograman biasa di sebut function.
Contoh:
Mahasiswa
Attributenya : nama, nik.
Behaviornya : jalan ke kanan, jalan ke kiri

 Class
Adalah object yang masih abstrak, belum berwujud, class mencetak object, object di cetak class.
Singkat contoh perbedaan object dgn class:

Object
Udin-> Udin, 43a67860, IT, Bekasi
Dikatakan Object karma sudah berisi value atau data

Class
Mahasiswa-> nama, nim, jurusan, alamat
Dikatakan Class karna masih berbentuk abstrak, masih dalam bentuk class.

Jika dilihat dalah bentuk java, contohnya seperti ini:


2

3
Mahasiswa Udin = new Mahasiswa()
    |       |            |
  Class  Object      Constructor

Constructor
Adalah method yang pertama kali akan dijalankan ketika kita akan membentuk suatu object dari class.

Program berorientasi object mempunyai karakteristik atau sifat. Ada 4 pokok karakter OOP:  

> Encapsulation
Encapsulation adalah pembungkusan attribut/properti (field atau variable) dan tingkah laku (method) di dalam sebuah kelas untuk menyembunyikannya dari kelas lain, sehingga kelas lain tidak dapat mengakses atribut dan method yang disembunyikan di dalam kelas yang lainnya. Di dalam sebuah class terdapat atribut dan method yang memiliki hak akses tertentu terhadap environment/lingkungan-nya, hak akses ini biasa di sebut Access Modifier.
Access Modifier terdiri dari private, protected, dan public.
  • private
    memberikan hak akses hanya kepada anggota class tersebut untuk menggunakan dan/atau mengubah nilai dari property atau method tersebut.
  • protected
    memberikan hak akses kepada anggota class nya dan anggota class hasil inheritance (penurunan sifat) dari class tersebut.
  • public
    memberikan hak akses kepada property dan method agar dapat digunakan diluar class tersebut.
Contoh program encapsulation

public class Mamalia {
private String kaki,tempat;

protected void setKaki(String kaki){
this.kaki = kaki;
}

protected String getKaki(){
return this.kaki;
}

protected void setTempatHidup(String tempat){
this.tempat = tempat;
}

protected String getTempatHidup(){
return this.tempat;
}

public String namaKelas(){
return “Kelas Mamalia”;
}
}

Dari script di atas terlihat bahwa field kaki dan tempat serta metode-metodenya terbungkus dalam sebuah kelas yaitu kelas mamalia

> Inheritace

Inheritance atau Pewarisan adalah konsep dimana class superClass /class induk dapat mewariskan semua Attribut dan Method kepada subClass/class anak. Untuk menggunakan konsep pewarisan ini, kita harus menggunakan keyword/kata kunci extend

Contoh:
  • pertama membuat class Mahasiswa yang akan menjadi superclass/class induk.


public class Mahasiswa {
    private int Nim;
    private String Nama,Jurusan;
   
    public int getNim() {
        return Nim;
    }
    public void setNim(int nim) {
        Nim = nim;
    }
    public String getNama() {
        return Nama;
    }
    public void setNama(String nama) {
        Nama = nama;
    }
    public String getJurusan() {
        return Jurusan;
    }
    public void setJurusan(String jurusan) {
        Jurusan = jurusan;
    }
}
  • setelah membuat superclass lanjut dengan membuat subclass/class anak


 public class MHS1 extends Mahasiswa {

    public static void main(String[] args) {
        MHS1 m = new MHS1();
        m.setNim(11201160);
        m.setNama("Arif Kurniawan");
        m.setJurusan("Teknik Informatik");
      
        System.out.println("Nim      :"+m.getNim());
        System.out.println("Nama     :"+m.getNama());
        System.out.println("Jurusan  :"+m.getJurusan());
    }
}

Dari program di atas terbukti bahwa class MHS1 merupakan class anak karena class MHS! bisa memanggil method setNim(),setNama(),setJurusan,getNim(),getNama(),getJurusan() padahal pada class MHS1 tidak memiliki method tersebut. Mengapa demikian?? karena class anak mendapat warisan method dan attribut dari class Mahasiswa

> Polymorphic

Polymorphism adalah suatu aksi yang memungkinkan pemrogram menyampaikan pesan tertentu keluar dari hirarki obyeknya, dimana obyek yang berbeda memberikan tanggapan/respon terhadap pesan yang sama sesuai dengan sifat masing-masing obyek.
Atau Polymorphic dapat berarti banyak bentuk, maksudnya yaitu kita dapat menimpa (override), suatu method, yang berasal dari parent class (super class) dimana object tersebut diturunkan, sehingga memiliki kelakuan yang berbeda.

Contoh program java nya :
Simpan dengan nama CoolMahasiswa.java

public class CoolMahasiswa extends Mahasiswa{
public void printNama(){
System.out.println(“Hallo, saya Mahasiswa yang baik”);
Super.printNama();
}
}
Simpan dengan nama Main.java
public class Main{
public static void main(String[] args]) {
CooltMahasiswa mhs = new CoolMahasiswa();
mhs.setNim(“09530518”);
mhs.setNama(“Nadia Kharisma Ulfah”);
mhs.printNim();
mhs.printNama();
}
}
Kemudian compile dan run.
C:\>javac CoolMahasiswa.java
C:\>javac Main.java
C:\>java Main
Kontruksi objek mahasiswa
Nim:09530518
Hallo, saya Mahasiswa yang baik
Nama:Nadia Kharisma Ulfah
C:\>

Terlihat bahwa disini kita mengoverride method printNama(), dengan menambahkan beberapa teks tambahan, sehingga method printNama(), pada class CoolMahasiswa, memiliki perilaku yang berbeda dengan class Mahasiswa.

Sumber 


0 komentar:

Posting Komentar