Pages

Class dan Object (Object Oriented Programming)


Bab yang di pelajari di kelas PBO kemaren bahas tentang class dan object. 
Berikut sedikit pengertian mengenai class dan object

Apasih class itu?

Sedangkan Class merupakan cetak biru (blue print) dari objek atau dengan kata lain sebuah Class menggambarkan ciri-ciri objek secara umum. Sebagai contoh Suzuki Smash, Yamaha VegaR, Honda SupraFit, dan Kawasaki KazeR merupakan objek dari Class sepeda motor. Suzuki Smash dan objek lainnya juga memiliki kesamaan atribut (merk, tipe, berat, kapasitas bensin, tipe mesin, warna, harga) dan method untuk mengakses data pada atributnya (misal fungsi untuk menginputkan data merk, tipe, berat, dsb serta fungsi untuk mencetak data merk, tipe, berat, dsb).

Instant of Class
a. Object Objek merupakan segala sesuatu yang ada didunia ini, yaitu manusia, hewan, tumbuhan, rumah, kendaraan, dan lain sebagainya. Contoh-contoh objek yang telah disebutkan diatas merupakan contoh objek nyata pada kehidupan kita. Pada pemrograman berorientasi objek, kita akan belajar bagaimana membawa konsep objek dalam kehidupan nyata menjadi objek dalam dunia pemrograman. Setiap objek dalam dunia nyata pasti memiliki 2 elemen penyusunnya, yaitu keadaan (state) dan perilaku/sifat (behaviour).

Sebagai contoh, sepeda memiliki keadaan yaitu warna, merk, jumlah roda, ukuran roda. Dan perilaku/sifat sepeda adalah berjalan, berhenti, belok, menambah kecepatan, mengerem. Pada saat objek diterjemahkan ke dalam konsep PBO, maka elemen penyusunnya juga terdiri atas 2 bagian, yaitu : 
Atribut, merupakan ciri-ciri yang melekat pada suatu objek (state). 
Method, merupakan fungsi-fungsi yang digunakan untuk memanipulasi nilai-nilai pada atribut atau untuk melakukan hal-hal yang dapat dilakukan suatu objek (behaviour). 

Objek dalam konsep PBO memiliki keadaan dan perilaku yang sama seperti halnya objek di dunia nyata, karena objek dalam konsep PBO merupakan representasi objek dari dunia nyata. Objek dalam PBO merepresentasikan keadaan melalui variabel-variabel (Atribut), 
sedangkan perilakunya direpresentasikan dengan method (yang merupakan suatu fungsi yang berhubungan dengan perilaku objek tersebut maupun berhubungan dengan atribut dari objek tersebut). Objek yang memiliki kesamaan atribut dan method dapat dikelompokkan menjadi sebuah Class. Dan objek-objek yang dibuat dari suatu class itulah yang disebut dengan Instant of class.

Untuk menginstansi (membuat) objek dari class, gunakan operator new.

b. Anonymous Object
Berbeda dengan object biasa, anonymous object merupakan objek yang tidak memiliki nama. Anonymous object tidak memakan resource memori. Namun kelemahannya adalah objek ini tidak bisa digunakan lagi (hanya dapat digunakan satu kali saja) karena setelah digunakan akan langsung dihapus.

1.3. Keyword “this”
Perhatikan keyword “this” di bawah ini (lihat pada class SepedaMotor) : Untuk membedakan variabel merk pada parameter dan variabel merk pada atribut dari class SepedaMotor, digunakanlah keyword this”. Sehingga untuk menggunakan atribut merk pada class SepedaMotor, digunakan : this.merk


1.4. Atribut & Method 
Pada contoh class Latihan1a, atribut dari class tersebut adalah merk, tipe, tangki, dan harga, yang ini berarti bahwa setiap objek dari class sepeda motor (atau dengan kata lain setiap sepeda motor yang ada di dunia nyata) pasti memiliki merk, tipe motornya, kapasitas maksimal dari tangki BBM, dan harga jual sepeda motor tersebut di pasaran. Sedangkan contoh method dari class Latihan 1a adalah setMerk(String merk) dan getMerk() yang berfungsi untuk mengambil nilai atribut merk. Secara umum method (ada juga yang menyebutnya fungsi) itu ada 2 macam, yaitu method yang mengembalikan nilai dan method yang tidak mengembalikan nilai.

1.5. Access Modifier 
Yang dimaksud dengan access modifier adalah pengaturan hak akses class maupun method. Ada 4 akses yang tersedia, yaitu default, public, protected, private.1.6. Static Variable vs Instant Variable 
Static variabel adalah variabel yang didefinisikan/dideklarasikan dengan menggunakan keyword
static”, 
contoh : Variabel-variabel yang dideklarasikan dengan tidak menggunakan keyword “static”, maka variabel tersebut disebut dengan instant variabel (atau variabel instant). 

 Jika sebuah variable merupakan variable instant, maka masing-masing objek dari class tersebut akan memiliki variable yang sama dengan variable instant tersebut, perubahan nilai yang terjadi pada variable instant di satu objek tidak akan berpengaruh pada variable instant di objek yang berbeda. 
 Jika sebuah variable merupakan variable static (pada suatu class), maka variabel static tersebut adalah variabel yang sama di semua objek dari class tersebut. Sehingga perubahan nilai pada variabel static tersebut di suatu objek akan berpengaruh juga terhadap objek yang lainnya. 
 Nilai suatu variabel static akan selalu sama untuk semua instant of class (atau objek) dari sebuah class.
Berikut contoh penggunaan class dan object dalam suatu program sederhana dalam perhitungan aritmatika 

package perhitunganaritmatika;

public class operasi {
    int angka1;
    int angka2;
    int hasil;
    float hasil1;
    
    public operasi(int angka1, int angka2){
        this.angka1=angka1;
        this.angka2=angka2;
    }
    int getPenjumlahan(){
        hasil=angka1+angka2;
        return hasil;
    }
    float getPembagian(){
        hasil1=(float)angka1/(float)angka2;
        return hasil1;
    }
    int getPengurangan(){
        hasil=angka1-angka2;
        return hasil;
    }
    int getPerkalian(){
        hasil=angka1*angka2;
        return hasil;
    }
}

Pada class lain, tinggal melakukan pemanggilan class yang sudah dibuat sebelumnya untuk memberikan nilai untuk inputan yang dimasukkan user

package perhitunganaritmatika;

import java.util.Scanner;

public class inputan {
    public static void main(String[] args) {
        Scanner angka = new Scanner(System.in);
        System.out.print("Masukkan bilangan pertama : ");
        int i=angka.nextInt();
        System.out.println("----------------------------");
        System.out.print("Masukkan bilangan kedua : ");
        int j =angka.nextInt();
        System.out.println("----------------------------");
        System.out.println("Hasil perhitungan : ");
        operasi hasilnya = new operasi (i,j);
        System.out.println("Hasil Pengurangan = "+hasilnya.getPengurangan());
        System.out.println("Hasil Perjumlahan = "+hasilnya.getPenjumlahan());
        System.out.println("Hasil Perkalian = "+hasilnya.getPerkalian());
        System.out.println("Hasil Pembagian = "+hasilnya.getPembagian());
    }
}

Dan dalam penerapan program sederhana seperti pemasukan biodata seseorang dapat dilakukan sebagai berikut :

/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package identitas;

/**
 *
 * @author ASUS
 */
public class data {
    String nim;
    String nama;
    String alamat;
    String jeniskelamin;
    String status;
    
    public void Setnim (String nim){
        this.nim=nim;
    }
    public void SetNama (String nama){
        this.nama=nama;
    }
    public void SetAlamat (String alamat){
        this.alamat=alamat;
    }
    public void SetJenisKelamin (String jeniskelamin){
        this.jeniskelamin=jeniskelamin;
    }
    public void SetStatus(String status){
        this.status=status;
    }
    public String getNim(){
        return nim;
    }
    public String getNama(){
        return nama;
    }
    public String getAlamat(){
        return alamat;
    }
    public String getJeniskelamin(){
        return jeniskelamin;
    }
    public String getStatus(){
        return status;
    }
    void status(String status2){
        
        boolean m, l;
        if (m=true){
            System.out.println("Menikah");
        }else if (l=true){
            System.out.println("Lajang");
        }
    }
    void jenis(String jenis2){
        boolean L, P;
        if (L=true){
            System.out.println("laki-laki");
        }else if (P=true){
            System.out.println("perempuan");
        }
    }
    
}

Dan juga, pada main class hanya perlu memanggil class yang sudah dibuat untuk menampilkan fungsi 


package identitas;

import java.io.*;

public class input {

    /**
     * @param args the command line arguments
     */
    public static void main(String[] args) throws IOException {
        // TODO code application logic here


        data p = new data();
        BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
        System.out.print("Masukkan nim : ");
        p.Setnim((br.readLine()));
        System.out.print("Masukkan nama : ");
        p.SetNama((br.readLine()));
        System.out.print("Masukkan alamat : ");
        p.SetAlamat((br.readLine()));
        System.out.print("Masukkan jenis kelamin : ");
        p.SetJenisKelamin((br.readLine()));
        System.out.print("Masukkan status : ");
        p.SetStatus((br.readLine()));
        System.out.println("-----------------------");
        System.out.println("Nim : " + p.getNim());
        System.out.println("Nama : " + p.getNama());
        System.out.println("Alamat : " + p.getAlamat());
        System.out.print("Jenis kelamin : ");
        p.jenis(null);
        System.out.print("Status :");
        p.status(null);


    }
}

fitri

YOU MIGHT ALSO LIKE

Tidak ada komentar:

Posting Komentar

Pengunjung

11327

Instagram