Praktek

 Praktek

pada praktek ini kita akan membuat :

  1. Super class
  2. Subclass
  3. Keyword Super
  4. Eksekusi





package LatihanInheritance;

class Karyawan {
    protected String nama;
    protected String idKaryawan;
    protected double gajiPokok;

    public Karyawan(String nama, String idKaryawan, double gajiPokok) {
        this.nama = nama;
        this.idKaryawan = idKaryawan;
        this.gajiPokok = gajiPokok;
    }

    public void tampilkanInfo() {
        System.out.println("ID: " + idKaryawan);
        System.out.println("Nama: " + nama);
        System.out.println("Gaji Pokok: Rp" + gajiPokok);
    }

    public double hitungTotalGaji() {
        return gajiPokok;
    }
}

class Manager extends Karyawan {
    private double tunjanganJabatan;

    public Manager(String nama, String idKaryawan, double gajiPokok, double tunjanganJabatan) {
        super(nama, idKaryawan, gajiPokok);
        this.tunjanganJabatan = tunjanganJabatan;
    }

    @Override
    public double hitungTotalGaji() {
        return super.hitungTotalGaji() + tunjanganJabatan;
    }

    @Override
    public void tampilkanInfo() {
        super.tampilkanInfo();
        System.out.println("Jabatan: Manager");
        System.out.println("Tunjangan Jabatan: Rp" + tunjanganJabatan);
        System.out.println("Total Penghasilan: Rp" + hitungTotalGaji());
    }
}

class Developer extends Karyawan {
    private String bahasaPemrograman;
    private double bonusLembur;

    public Developer(String nama, String idKaryawan, double gajiPokok, String bahasa, double bonusLembur) {
        super(nama, idKaryawan, gajiPokok);
        this.bahasaPemrograman = bahasa;
        this.bonusLembur = bonusLembur;
    }

    @Override
    public double hitungTotalGaji() {
        return super.hitungTotalGaji() + bonusLembur;
    }

    @Override
    public void tampilkanInfo() {
        super.tampilkanInfo();
        System.out.println("Keahlian: " + bahasaPemrograman);
        System.out.println("Bonus Lembur: Rp" + bonusLembur);
        System.out.println("Total Penghasilan: Rp" + hitungTotalGaji());
    }
}

public class Main {
    public static void main(String[] args) {
        System.out.println("=== SISTEM MANAJEMEN KARYAWAN ===\n");

        Manager mng = new Manager("Budi Santoso", "MGR-001", 15000000, 5000000);
        Developer dev = new Developer("Citra Permadi", "DEV-042", 10000000, "Java", 2000000);

        System.out.println("--- Profil Manager ---");
        mng.tampilkanInfo();
        
        System.out.println("\n--- Profil Developer ---");
        dev.tampilkanInfo();
    }
}

Dari kode diatas kita dapet menyimpulkana
  1. Karyawan menjadi Super class atau parrent class
  2. manager dan developer sebagai subclas
  3. super.tampilkanInfo sebagai keyword super
  4. Eksekusi di class main


Komentar

Postingan populer dari blog ini

Implementasi

Pendahuluan