Anda di halaman 1dari 8

TUGAS MINGGU KE – 7

Carilah konsep class diagram berikut dalam source code yang ada :
a. Class
b. Atribute
c. Operation
d. Generalization
e. Association

Pembahasan :
a. Class
Rancangan dari objek yang mendefinisikan attribute dan method umum pada semua objek
dari jenis tertentuDigambarkan dengan 3 tingkat, yaitu (dari atas ke bawah)
 Name : Nama dari kelas, aturan penulisan huruf pertama dari semua kata adalah
huruf besar, selain dari itu huruf kecil.
 Attributes : Mengambarkan attribute yang dimiliki oleh kelas, aturan penamaan
huruf pertama dari kata kedua dan kata selanjutnya adalah huruf besar, selain dari itu
huruf kecilFormat modifier name : type = value.
 Operations : Menggambarkan method yang dimiliki oleh kelas, aturan penamaan
sama dengan penamaan attribute.
Contoh class dari source code yang saya temukan yaitu :
public class karyawan {
String nama;
String nik;
String jabatan;
String golongan;
public void absen(){
System.out.println("KEHADIRAN SELALU HADIR"); }

b. Atribute
Mengambarkan attribute yang dimiliki oleh kelas, aturan penamaan huruf pertama dari kata
kedua dan kata selanjutnya adalah huruf besar, selain dari itu huruf kecilFormat modifier
name : type = value.
Contoh atribute dari class karyawan di atas yaitu :
String nama;
String nik;
String jabatan;
String golongan;

c. Operation
Method atau operasi adalah abstraksi dari segala sesuatu yang dapat kita lakukan
pada sebuah object dan ia berlaku untuk semua object yang terdapat dalam class
tersebut. Elemen yang diperlukan dari deklarasi method adalah tipe kembalian
method, nama, kurung buka dan tutup ( ) dan isi method yang diawali dan diakhiri
dengan kurung kurawal buka dan tutup { }.
Contoh method atau operation yaitu :
public void setNama(String
nama) { this.nama = nama;
}

public String
getNik() { return
nik;
}

d. Generalization
Generalization atau yang juga dikenal sebagai inheritance. Dimana Konsep
inheritance membuat sebuah struktur atau ‘hierarchy’ class dalam kode program.
Class yang akan ‘diturunkan’ bisa disebut sebagai class induk (parent class), super
class, atau base class. Sedangkan class yang ‘menerima penurunan’ bisa disebut
sebagai class anak (child class), sub class, derived class atauheir class. Semua sub
class akan memiliki apa yang dimiliki super class tapi super class tidak memiliki apa
yang hanya dimiliki oleh sub class.
Contoh generalization dari source code yaitu :
class gaji extends karyawan {
float gajiTotal(float tunjanganKehadiran, float
tunjanganGolongan, float tunjanganJabatan){
return (2000000+ tunjanganGolongan + tunjanganJabatan +
tunjanganKehadiran);
}
void hasil(float tunjanganKehadiran, float tunjanganGolongan, float
tunjanganJabatan){ System.out.println("Gaji Total :" +
gajiTotal(tunjanganKehadiran,
tunjanganGolongan, tunjanganJabatan));
}
}

e. Association
Association adalah, hubungan antar dua class yang mana, hubungan tersebut
merupakan hubungan struktural, yang bisa saling menggunakan dan tidak saling
memiliki. Misal pada gambar di bawah, terdapat class Dosen dan class Mahasiswa,
dilihat dari kardinalitasnya, satu dosen bisa memiliki banyak mahasiswa. Apabila
dosen dihilangkan, mahasiswa masih bisa digunakan karena tidak saling memiliki.

Contoh source code dari association yaitu :

class Mahasiswa {
private String nim; private String nama;
public Mahasiswa(String nim, String nama) {
this.nim=nim; this.nama=nama; }
public void setnama (String nama) { this.nama = nama; }
public void setnim (String nim) { this.nim = nim; }
public String getNim() { return this.nim; }
public String getNama () { return this.nama; } }

class Dosen {
private String Kddosen;
private String[] nimMHS=new String[5]; private int jmlMahasiswa=0;
public Dosen(String kode) {
this.Kddosen=kode; }
public void setKddosen (String Kddosen) { this.Kddosen = Kddosen; }
public void setNimMahasiswa (String nim) { nimMHS[jmlMahasiswa]=nim;
jmlMahasiswa++; }
public int getJmlMahasiswa () { return this.jmlMahasiswa; }
public String getKddosen () { return this.Kddosen; }
Berikut adalah source code lengkap mengenai class diagram pada poin a, b, c, d :
package com.tugas PBO.java;

public class karyawan {


String nama;
String nik;
String jabatan;
String golongan;
public void absen(){
System.out.println("KEHADIRAN SELALU HADIR");
}
public String getNama() {
return nama;
}

public void setNama(String nama) {


this.nama = nama;
}

public String getNik() {


return nik;
}

public void setNik(String nik) {


this.nik = nik;
}

public String getJabatan() {


return jabatan;
}

public void setJabatan(String jabatan) {


this.jabatan = jabatan;
}

public String getGolongan() {


return golongan;
}

public void setGolongan(String golongan) {


this.golongan = golongan;
}
public static void main(String[] args){
karyawan karyawan1;
manager manager1;
gaji gaji1;

karyawan1 = new karyawan();


manager1 = new manager();
gaji1 = new gaji();

karyawan1.setNama(" AUDIA ALMA ERLIANA");


karyawan1.setNik("368");
karyawan1.setJabatan("HRD");
karyawan1.setGolongan("PEREMPUAN");

//Inputkan gaji dan memisalkan gaji pokok nya 2 juta + berbagai tunjangan

manager1.setKehadiran(20);
manager1.setTunjanganKehadiran(4000);
manager1.setTunjanganGolongan(10000);
manager1.setTunjanganJabatan(30000);

System.out.println("Nama Karyawan :" +


karyawan1.getNama()); System.out.println("NIK Karyawan :" +
karyawan1.getNik()); System.out.println("Jabatan Karyawan :" +
karyawan1.getJabatan()); System.out.println("Golongan Karyawan :" +
karyawan1.getGolongan()); karyawan1.absen();
System.out.println("Kehadiran :" + manager1.getKehadiran());
System.out.println("Tunjangan Kehadiran :" +
manager1.getTunjanganKehadiran()); System.out.println("Tunjangan Golongan :" +
manager1.getTunjanganGolongan()); System.out.println("Tunjangan Jabatan :" +
manager1.getTunjanganJabatan());
gaji1.hasil(manager1.getTunjanganKehadiran(),manager1.getTunjanganJabatan(),
manager1.getTunjanganGolongan());
}
}
class manager extends karyawan {
int kehadiran;
float
tunjanganKehadiran;
float tunjanganGolongan;
float tunjanganJabatan;

public int getKehadiran() {


return kehadiran;
}

public void setKehadiran(int kehadiran) {


this.kehadiran = kehadiran;
}

public float getTunjanganKehadiran() {


return tunjanganKehadiran;
}

public void setTunjanganKehadiran(float tunjanganKehadiran) {


this.tunjanganKehadiran = tunjanganKehadiran;
}

public float getTunjanganGolongan() {


return tunjanganGolongan;
}

public void setTunjanganGolongan(float tunjanganGolongan) {


this.tunjanganGolongan = tunjanganGolongan;
}

public float getTunjanganJabatan() {


return tunjanganJabatan;
}

public void setTunjanganJabatan(float tunjanganJabatan) {


this.tunjanganJabatan = tunjanganJabatan;
}
}
class gaji extends karyawan {
float gajiTotal(float tunjanganKehadiran, float tunjanganGolongan, float
tunjanganJabatan){
return (2000000+ tunjanganGolongan + tunjanganJabatan + tunjanganKehadiran);
}
void hasil(float tunjanganKehadiran, float tunjanganGolongan, float tunjanganJabatan){
System.out.println("Gaji Total :" + gajiTotal(tunjanganKehadiran,
tunjanganGolongan, tunjanganJabatan));
}
}
Berikut adalah source code untuk poin e :

class Mahasiswa {
private String nim; private String nama;
public Mahasiswa(String nim, String nama) {
this.nim=nim; this.nama=nama; }
public void setnama (String nama) { this.nama = nama; }
public void setnim (String nim) { this.nim = nim; }
public String getNim() { return this.nim; }
public String getNama () { return this.nama; } }

class Dosen {
private String Kddosen;
private String[] nimMHS=new String[5]; private int jmlMahasiswa=0;
public Dosen(String kode) {
this.Kddosen=kode; }
public void setKddosen (String Kddosen) { this.Kddosen = Kddosen; }
public void setNimMahasiswa (String nim) { nimMHS[jmlMahasiswa]=nim;
jmlMahasiswa++; }
public int getJmlMahasiswa () { return this.jmlMahasiswa; }
public String getKddosen () { return this.Kddosen; }
public void daftarMahasiswa() {
System.out.println("Kode Dosen "+Kddosen);
System.out.println("Daftar Mahasiswa"); for (int i=0;i<jmlMahasiswa;i++)
{ System.out.println(nimMHS[i]); } } } //kelas DriverMahasiswaDosen class
DriverMahasiswaDosen{
public static void main(String[] args) {
/*kode dibawah ini merupakan implementasi dari hubungan asosiasi antar kelas*/
Mahasiswa mhs1 = new Mahasiswa("30107998","Abdul Kadir");
Mahasiswa mhs2 = new Mahasiswa("30107999","Asep Sumarta");
Dosen dsn = new Dosen("SKS");
dsn.setNimMahasiswa(mhs1.getNim()); dsn.setNimMahasiswa(mhs2.getNim());
dsn.daftarMahasiswa(); } }

Anda mungkin juga menyukai