Senin, 09 Desember 2013

PEMROGRAMAN CLASS & OBJEK [MATERI PBO 7]

Definisi Class
Class adalah blok-blok bangun pada program JAVA. Class mendefinisikan atribut dan perilaku obyek yang
dibuatnya. Class merupakan definisi formal suatu abstraksi. Class berlaku sebagai template untuk pembuatan obyek-obyek.

Class berisi abstraksi yang terdiri dari nama class, atribut dan service.

class Manusia {
     void menyapa() {
          System.out.println(“selamat pagi”);
     }
}

Class Instances
Untuk dapat menggunakan kelas yang telah didefinisikan, anda harus membuat sebuah obyek dari kelas tersebut (class instance), dengan sintaks:
          NamaKelas namaObyek = new NamaKelas ( [parameter] );
Contoh:
          Manusia tukijan = new Manusia();

Instance Variables
Suatu obyek dapat dibedakan berdasarkan sifat (behavior) yang berbeda. Obyek juga dapat dibedakan
berdasarkan atributnya.
Mis: manusia dapat dibedakan berdasarkan pekerjaan, ras, jenis kelamin, dsb. Atribut yang membedakan suatu instance obyek manusia yang satu dengan yang lainnya disebut instance variabel.



class Manusia {
          private String suku = “Jawa";
          private String jenisKelamin = “pria";
          private String sapaan = “halo dab!";
          void menyapa() {
               System.out.println(sapaan);
          }
}

Method
Method dapat digambarkan sebagai sifat (behavior) dari suatu class. Untuk mendefinisikan method pada dalam class digunakan sintaks sintaks
          hak_akses <tipe_data_return> nama_method( [parameter] )
Untuk memanggil method dapat digunakan sintaks sebagai berikut:
          namaObyek.nama_method( [parameter] );
Contoh:
          tukijan.menyapa();


class Manusia {
     void menyapa() {
          System.out.println(“selamat pagi”);
     }
}
public class ManusiaManusia {
     public static void main(String[] args) {
          Manusia tukijan = new Manusia();
          tukijan.menyapa();
          System.exit(0);
     }
}

Method Overloading
JAVA interpreter memiliki kemampuan untuk menggunakan beberapa cara pemanggilan method.

class Manusia {
     void menyapa() {
          System.out.println(“selamat pagi");
}
     void menyapa(String sapaan) {
          System.out.println(sapaan);
     }
}

public class ManusiaManusia {
     public static void main(String[] args) {
          Manusia susi = new Manusia();
          Manusia ginting = new Manusia();
          susi.menyapa();
          ginting.menyapa(“horas bah");
          System.exit(0);
     }
}

Akses Method
Nilai variabel dari suatu instance dapat berganti, oleh sebab itu harus ada suatu cara untuk mengubah nilai variabel tersebut (akses method). Secara konvensi method untuk mengubah nilai suatu instance variabel dimulai dengan kata set.

class Manusia {
     private String suku = “Melayu";
     private String jenisKelamin = “pria";
     private String sapaan = “selamat pagi";
     private boolean bekerja = true;

     void menyapa() {
          System.out.println(sapaan); }
     void setSapaan(String sapaan) {
          this.sapaan = sapaan; }
     void setSuku (String suku) {
          this.suku = suku; }
     void setBekerja(boolean punyaPekerjaan) {
          bekerja = punyaPekerjaan; }
}

public class ManusiaManusia {
     public static void main(String[ ] args) {
          Manusia changNam = new Manusia();
          changNam.setSapaan(“anyong haseo");
          changNam.menyapa();
     }
}

Suatu method dapat pula mengembalikan nilai pada saat pemanggilan.

boolean menantuIdaman() {
     if (bekerja == true && gajiTinggi == true)
          return true; else return false;
}

Constructor
Constructor merupakan metode khusus yang memiliki nama sama dengan kelasnya. Jika kita tidak mengkodekan sebuah constructor, JAVA akan membuat sebuah constructor default untuk kita. Constructor default tidak melakukan apa-apa, namun memungkinkan semua variabel yang tidak diinisialisasi dalam deklarasi diberi suatu nilai default.

class Mahasiswa {
     private String nama = "";
     private int nim = 0;
     private static int NIM = 0;
     private double ipk = 0.0;
     public Mahasiswa() { this.nim = ++NIM; }
     public Mahasiswa(String na, double i) {
          this.nama = na;
          this.ipk = i;
          this.nim = ++NIM; }
     public void LihatData() {
          System.out.println("Nama : " + nama + "\tNIM : " + nim +
          "\tIPK : " + ipk ); }
}

public class MahasiswaInfo {
     public static void main(String args[]) {
          Mahasiswa mhs1 = new Mahasiswa( "Dinda“ , 3.4 );
          Mahasiswa mhs2 = new Mahasiswa( "Ninda“ , 3.25 );
          Mahasiswa mhs3 = new Mahasiswa();
          mhs1.LihatData();
          mhs2.LihatData();
          mhs3.LihatData();
     }
}

Reference Variable
Reference variable digunakan untuk menyimpan alamat dinamis suatu class instance.
class Mahasiswa {
     String nama = “Ari";
     void setNama(String nama) {
     this.nama = nama;
     }
}

public class RefVariabel {
     public static void main(String[] args) {
          Mahasiswa A = new Mahasiswa();
          Mahasiswa B = A;
          Mahasiswa C = new Mahasiswa();

System.out.println("A:"+A.nama+"\tB:"+B.nama+"\tC:"+C.nama);
          A.setNama(“Ira");
     System.out.println("A:"+A.nama+"\tB:"+B.nama+"\tC:"+ C.nama);
          C.setNama("Ria");
     System.out.println("A:"+A.nama+"\tB:"+B.nama+"\tC:"+C.nama);
          System.exit(0);
     }
}

Hubungan Antar Class
Pemrograman berorientasi obyek adalah sekumpulan class-clas yang saling berintarksi. Ada banyak cara suatu class dapat berinteraksi dengan class lainnya, seperti pewarisan (GenSpec), agregasi (WholePart) dan asosiasi (instance/ message connection)

0 komentar:

Posting Komentar

 
;