Kelas dan Objek

Materi Kelas dan Objek dalam Pemrograman Berorientasi Objek

1. Konsep Dasar

  • Kelas (Class): Abstraksi atau blueprint dari sebuah objek yang mendefinisikan atribut dan perilaku yang dimiliki oleh objek tersebut
  • Objek (Object): Instansi konkret dari sebuah kelas yang memiliki nilai spesifik untuk setiap atribut
  • Abstraksi: Proses mengidentifikasi bagian-bagian penting yang merepresentasikan suatu entitas

2. Struktur Kelas

  • Nama Kelas: Identitas kelas yang harus mengikuti konvensi penamaan (kata benda, diawali huruf besar)
  • Atribut: Variabel yang mendefinisikan karakteristik atau data yang dimiliki oleh kelas
  • Metode: Fungsi yang mendefinisikan perilaku atau operasi yang dapat dilakukan oleh kelas

3. Aturan Penamaan

Kelas:

  • Berupa kata benda
  • Diawali dengan HURUF BESAR
  • Jika terdiri dari beberapa kata, setiap kata diawali dengan huruf besar dan digabungkan (PascalCase)
  • Contoh: MahasiswaKartuKreditRekeningBank

Atribut:

  • Berupa kata benda
  • Diawali dengan HURUF KECIL
  • Jika terdiri dari beberapa kata, kata pertama diawali huruf kecil dan kata berikutnya diawali huruf besar (camelCase)
  • Contoh: nimnamaLengkaptanggalLahir

Metode:

  • Berupa kata kerja
  • Diawali dengan HURUF KECIL
  • Menggunakan format camelCase untuk penamaan yang terdiri dari beberapa kata
  • Contoh: hitungNilai()cetakKartu()ambilUang()

4. Deklarasi Kelas dalam Java

[access_modifier] class NamaKelas {
    // deklarasi atribut
    [access_modifier] tipeData namaAtribut;
    
    // deklarasi metode
    [access_modifier] tipeReturn namaMetode([parameter]) {
        // implementasi metode
    }
}

5. Atribut

  • Merepresentasikan data atau karakteristik dari suatu kelas
  • Memiliki tipe data dan nama
  • Dapat memiliki nilai default
  • Contoh deklarasi:
     
    java
    private String nama;
    private int umur;
    private double ipk;

6. Metode

  • Merepresentasikan perilaku atau fungsi dari suatu kelas
  • Dapat memiliki parameter dan nilai balik (return value)
  • Dibagi menjadi dua tipe:
    • Metode void: tidak mengembalikan nilai
    • Metode non-void: mengembalikan nilai dengan kata kunci return
  • Contoh deklarasi:
    public void cetakInfo() {
        System.out.println("Nama: " + nama);
    }
    
    public double hitungRata(double nilai1, double nilai2) {
        return (nilai1 + nilai2) / 2;
    }

7. Instansiasi Objek

  • Proses membuat objek dari suatu kelas menggunakan kata kunci new
  • Format dasar: NamaKelas namaObjek = new NamaKelas();
  • Contoh:
     
    java
    Mahasiswa mhs1 = new Mahasiswa();
    Mahasiswa mhs2 = new Mahasiswa("John", "12345");

8. Pengaksesan Atribut dan Metode

  • Menggunakan operator titik (.) untuk mengakses atribut dan metode dari suatu objek
  • Contoh:
     
    java
    mhs1.nama = "Alice";
    mhs1.setNIM("54321");
    String info = mhs1.getInfo();

9. Konstruktor

  • Metode khusus yang dipanggil saat objek dibuat (instansiasi)
  • Nama sama dengan nama kelas
  • Tidak memiliki tipe return
  • Dapat memiliki parameter
  • Contoh:
     
    java
    public Mahasiswa() {
        // konstruktor default
    }
    public Mahasiswa(String nama, String nim) {
        this.nama = nama;
        this.nim = nim;
    }

10. Penanganan Error dengan Try-Catch

  • Try-Catch adalah mekanisme untuk menangani exception (error) saat program berjalan tanpa menyebabkan program berhenti secara keseluruhan
  • Tujuan: Membuat program lebih robust dengan menangani error yang mungkin terjadi saat runtime
  • Contoh :
     
    java
    try {
        int hasil = 10 / 0;  // Operasi yang menimbulkan ArithmeticException
        System.out.println(hasil);  // Baris ini tidak akan dieksekusi
    } catch (ArithmeticException e) {
        System.out.println("Error: Pembagian dengan nol");
        // Program tetap berjalan meskipun terjadi error
    }
     

11. Class Diagram dalam UML

  • Digunakan untuk memvisualisasikan struktur kelas dalam sistem
  • Menunjukkan hubungan antar kelas (asosiasi, pewarisan, dll)
  • Memiliki 3 area utama:
    • Nama kelas
    • Atribut
    • Operasi/metode
  • Contoh notasi:
     

12. Encapsulation (Enkapsulasi)

  • Menyembunyikan detail implementasi dengan membuat atribut private
  • Menyediakan metode publik (getter/setter) untuk mengakses atribut
  • Contoh:
     
    java
    private String nim;
    public void setNim(String nim) {
        this.nim = nim;
    }
    public String getNim() {
        return nim;
    }