PBO8 - Membuat Database Akademik dengan Inheritance
TUGAS 8 - Pemrograman Berbasis Objek
Membuat Database Akademik dengan Inheritance dengan java dalam BlueJ
Nama : Bastian Farandy
NRP : 05111740000190
Kelas : Pemrograman Berbasis Objek A
Dalam Sistem Akademik ini menggunakan 8 class, yaitu Civitas, Database, Dosen, Mahasiswa, Pegawai, MataKuliah, Kelas, dan Buku. Civitas, Dosen, Mahasiswa, dan Pegawai merupakan inheritence, dimana class Civitas sebagai parent class, dan Dosen, Mahasiswa, Pegawai sebagai childnya.
Source Code:
Civitas
/**
* Write a description of class Civitas here.
*
* @author Bastian Farandy
*/
// merupakan parent class dari mahasiswa, pegawai, dan dosen
public class Civitas
{
private String nama;
private int usia;
private String alamat;
//fungsi untuk inisiasi
public Civitas(String Nama,int Umur,String Alamat)
{
nama = Nama;
usia = Umur;
alamat = Alamat;
}
//fungsi untuk menampilkan
public void display()
{
System.out.println("---------------------------------------");
System.out.println("Nama : "+nama);
System.out.println("Usia : "+usia);
System.out.println("Alamat Rumah: "+alamat);
System.out.println("---------------------------------------");
}
//fungsi untuk mengambil nama dari civitas (dosen/mahasiswa/pegawai)
public String getName()
{
return nama;//method getter untuk nama civitas
}
}
Database
import java.util.ArrayList;
/**
* Write a description of class Database here.
*
* @author Bastian Farandy
* @version 1.0
*/
//Class untuk membuat database baru
public class Database
{
private ArrayList<Mahasiswa> mahasiswa; //arraylist untuk menyimpan mahasiswa
private ArrayList<Dosen> dosen; //arraylist untuk menyimpan dosen
private ArrayList<Pegawai> pegawai; //arraylist untuk menyimpan pegawai
//fungsi untuk inisiasi database
public Database()
{
mahasiswa = new ArrayList<Mahasiswa>();
dosen = new ArrayList<Dosen>();
pegawai = new ArrayList<Pegawai>();
}
//fungsi untuk menambahkan dosen ke dalam database
public void tambahDosen(Dosen dsn)
{
dosen.add(dsn);
}
//fungsi untuk menambahkan pegawai ke dalam database
public void tambahPegawai(Pegawai pgw)
{
pegawai.add(pgw);
}
//fungsi untuk menambahkan mahasiswa ke dalam database
public void tambahMahasiswa(Mahasiswa mhs)
{
mahasiswa.add(mhs);
}
//fungsi untuk menghapus dosen dari database
public void hapusDosen(Dosen dsn)
{
dosen.remove(dsn);
}
//fungsi untuk menghapus pegawai dari database
public void hapusPegawai(Pegawai pgw)
{
pegawai.remove(pgw);
}
//fungsi untuk menghapus mahasiswa dari database
public void hapusMahasiswa(Mahasiswa mhs)
{
mahasiswa.remove(mhs);
}
//fungsi untuk menampilkan list mahasiswa di database
public void listMahasiswa()
{
for(Mahasiswa mhs : mahasiswa)
{
mhs.prnt();
System.out.println();
}
}
//fungsi untuk menampilkan list dosen di database
public void listDosen()
{
for(Dosen dsn : dosen)
{
dsn.print();
System.out.println();
}
}
//method untuk print list pegawai yang terdapat dalam database
public void listPegawai()
{
for(Pegawai pgw : pegawai)
{
pgw.print();
System.out.println();
}
}
}
Dosen
import java.util.ArrayList;
/**
* Write a description of class Dosen here.
*
* @author Bastian Farandy
*/
//class untuk membuat dosen sebagai inheritance dari class Civitas
public class Dosen extends Civitas
{
private String NID;
private String nama_dsn; //nama dosen
private ArrayList<Buku> buku;
public Dosen(String Nama_dsn,int usia_dsn,String alamat_dsn,String nid_dsn)
{
super(Nama_dsn,usia_dsn,alamat_dsn);
NID=nid_dsn;
buku = new ArrayList<Buku>();
}
public void prnt()
{//method untuk mendisplay informasi dosen
super.display();
System.out.println("NID : "+NID);
for(Buku bku : buku)
{
System.out.println("Meminjam Buku : "+bku.getJudul());
System.out.println();
}
}
public void PinjamBuku(Buku bk)
{//method untuk meminjam buku, menambahkan di list
buku.add(bk);
}
public void BalikinBuku(Buku bk)
{//method untuk mengembalikan buku, menghapus nya dari list
buku.remove(bk);
}
public String getNamaDosen()
{//method untuk mendapatkan nama dosen dari parent class Civitas
nama_dsn= super.getName();
return nama_dsn;
}
public void print()
{
super.display();
System.out.println("NID Dosen : "+NID);
}
}
Mahasiswa
import java.util.ArrayList;
/**
* Write a description of class Mahasiswa here.
*
* @author Bastian Farandy
*/
//class untuk membuat mahasiswa sebagai inheritance dari class Civitas
public class Mahasiswa extends Civitas
{
private String NRP;
private ArrayList<MataKuliah> matkl; //array list untuk mata kuliah yang diambil
private ArrayList<Buku> buku;
public Mahasiswa(String Nama_mhs,int usia_mhs,String alamat_mhs,String nrp_mhs)
{
super(Nama_mhs,usia_mhs,alamat_mhs);
NRP = nrp_mhs;
matkl = new ArrayList<MataKuliah>();
buku = new ArrayList<Buku>();
}
//fungsi untuk mengembalikan buku dan menghapus nya dari list
public void BalikinBuku(Buku bk)
{
buku.remove(bk);
}
//fungsi untuk meminjam buku dan menambahkan di list
public void PinjamBuku(Buku bk)
{
buku.add(bk);
}
//fungsi untuk mengambil matkul dan menambahkan di list
public void AmbilMatkul(MataKuliah matkul)
{
matkl.add(matkul);
}
//fungsi untuk drop matkul dan menghapus nya dari list
public void DropMatkul(MataKuliah matkul)
{
matkl.remove(matkul);
}
//fungsi untuk menampilkan informasi mahasiswa
public void print()
{
super.display();
System.out.println("NRP Mahasiswa : "+NRP);
for(MataKuliah mt : matkl)
{
System.out.println("Mengambil Mata Kuliah : "+mt.getMatkul());
System.out.println("Dosen : "+mt.getDosen());
System.out.println("Kelas : "+mt.getKelas());
}
for(Buku bku : buku)
{
System.out.println("Buku yang dipinjam : "+bku.getJudul());
System.out.println();
}
}
public void prnt()
{
super.display();
System.out.println("NRP Mahasiswa : "+NRP);
}
}
Pegawai
import java.util.ArrayList;
/**
* Write a description of class Pegawai here.
*
* @author Bastian Farandy
*/
//class untuk membuat pegawai sebagai inheritance dari class Civitas
public class Pegawai extends Civitas
{
private String NIP; //nomor induk pegawai
private ArrayList<Buku> buku; //list buku yang dipinjam
public Pegawai(String Nama,int Umur,String Alamat,String nip)
{
super(Nama,Umur,Alamat);
NIP=nip;
buku = new ArrayList<Buku>();
}
//fungsi untuk mencetak informasi pegawai
public void print()
{
super.display();
System.out.println("NIP Pegawai: "+NIP);
}
//fungsi untuk meminjam buku, menambahkan nya pada list
public void PinjamBuku(Buku bk)
{
buku.add(bk);
}
//fungsi untuk mengembalikan buku dan menghapus nya dari list
public void BalikinBuku(Buku bk)
{
buku.remove(bk);
}
//fungsi untuk mencetak informasi pegawai
public void prnt()
{
super.display();
System.out.println("NIP Pegawai: "+NIP);
for(Buku bku : buku)
{
System.out.println("Buku yang dipinjam : "+bku.getJudul());
System.out.println();
}
}
}
MataKuliah
/**
* Write a description of class MataKuliah here.
*
* @author Bastian Farandy
*/
//class mata kuliah yang dapat diambil oleh mahasiswa
public class MataKuliah
{
private int Kode;
private String NamaMatkul;
private int sks;
private String kel; //string kelas
private String dosn; //string nama dosen
//inisiasi
public MataKuliah(int kode_matkul,String Nama_matkul, int Sks)
{
Kode=kode_matkul;
NamaMatkul = Nama_matkul;
sks=Sks;
}
//fungsi untuk mengambil kelas dan menambahkan nya pada data setiap matkul
public void tambahKelas(Kelas kls)
{
kel=kls.getCls();
}
public void tambahDsn(Dosen dsn)
{//method untuk menambahkan dosen untuk setiap matkul
dosn=dsn.getNamaDosen();
}
//panggil matkul
public String getMatkul()
{
return NamaMatkul; //getter untuk nama matkul
}
//panggil kelas
public String getKelas()
{
return kel; //getter untuk kelas
}
//panggil dosen
public String getDosen()
{
return dosn; //getter untuk dosen
}
}
Kelas
/**
* Write a description of class Kelas here.
*
* @author Bastian Farandy
*/
//class Kelas
public class Kelas
{
private String kelas;
//inisiasi
public Kelas(String Kelas)
{
kelas=Kelas;
}
//mengambil kelas
public String getCls()
{
return kelas;
}
}
Buku
/**
* Write a description of class Buku here.
*
* @author Bastian Farandy
*/
//class buku
public class Buku
{
private String Judul;
private String Penulis;
//inisiasi
public Buku(String judul_buku,String penulis_buku)
{
Judul=judul_buku;
Penulis=penulis_buku;
}
//fungsi untuk mencari judul
public String getJudul()
{
return Judul; //method getter judul buku
}
}
Screenshot
Bagan dari class
Membuat Database
Menambahkan Mahasiswa
Menambahkan Pegawai
Menambahkan Dosen
Menambahkan Mata Kuliah
Menambahkan Kelas
Menambahkan Buku
Memanggil fungsi tambahKelas untuk menambahkan kelas di mata kuliah bersangkutan
Memanggil fungsi tambahDosen untuk menambahkan dosen di mata kuliah bersangkutan
Memanggil fungsi AmbilMatkul untuk menambahkan kelas di mata kuliah
Memanggil fungsi PinjamBuku untuk menambahkan kelas di mata kuliah
Menampilkan Informasi Mahasiswa
Menampilkan Informasi Dosen
Menampilkan Informasi Pegawai
fungsi untuk memasukkan mahasiswa,dosen dan pegawai ke dalam database
Menampilkan Informasi Mahasiswa dalam database
Comments
Post a Comment