Febri Yolanda Silalahi - Si 05-A - Modul 4
Febri Yolanda Silalahi - Si 05-A - Modul 4
MODUL 4
PEWARISAN TUNGGAL (INHERITANCE)
Nama:
Febri Y Silalahi (21103016)
Dosen:
Nicolaus Euclides
II. TOOL
a. CodeBlocks / Borland C++ / Visual C++
b. NetBeans IDE 8.1
c. Java SE Development Kit 8
String Merek;
int Kecepatan;
String Jenis;
String getMerek(){
return Merek;
}
String getJanis(){
return Jenis;
}
}
Selanjutnya buka class motor.java, untuk menggunakan konsep Inheritance, kita perlu
menggunakan kata kunci extends pada subclass tersebut dan untuk mengakses atribut-
atributnya, kita perlu membuat objek dari class motor terlebih dahulu. Seperti berikut ini:
package WILDAN_TECHNO_ART;
//Menampilkan hasil
System.out.println("Jenis Kendaraan: "+data.getJanis());
System.out.println("Merek Kendaraan: "+data.getMerek());
data.Melaju(290);
}
}
Kita juga dapat menggunakn atribut yang sama pada class mobil.java, yang diwariskan
dari class kendaraan, pada class mobil kalian tinggal mengganti nilai-nilainya seperti
berikut ini:
package WILDAN_TECHNO_ART;
Ketika mempelajari kode yang agak panjang dan melibatkan banyak object seperti diatas,
mulailah membaca kode program dari main() terlebih dahulu.
Jika terdapat proses instansiasi object dengan argument, baru masuk ke dalam
pendefinisian class tersebut dan ikuti alur pengiriman argumen hingga mengisi property
dari sebuah class. Apabila kita mulai membaca dari pendefinisian class terlebih dahulu,
biasanya memang lebih rumit.
Inheritance atau proses pewarisan class memang menjadi topik yang cukup rumit tapi
sangat penting. Untuk kode program yang kompleks, bisa saja ada sebuah class yang
diturunkan kepada class lain, dan kemudian di turunkan lagi kepada class selanjutnya.
/**
*
* @author Febri S
* 21103016
* SI 05-A
*/
public class ProjectPoint {
}
}
Point.java
/**
*
* @author Febri S
* 21103016
* SI 05-A
*/
Circle.java
package edu.praktikumpbo.projectpoint;
/**
*
* @author Febri S
* 21103016
* SI 05-A
*/
public class Circle extends Point {
private float radius;
//Method yang memanggil method Induk dari kelas induknya dengan menggunakan
keyword super
@Override
public void cetakPoint() //redefinisi fungsi kelas induk
{
super.cetakPoint();
System.out.println("Radius:" + radius);
}
Output
b. projectSpeak
Source Code
ProjectSpeak.java
package edu.praktikumpbo.projectspeak;
/**
*
* @author Febri S
* 21103016
* SI 05-A
*/
public class ProjectSpeak {
Dog.java
package edu.praktikumpbo.projectspeak;
/**
*
* @author Febri S
* 21103016
* SI 05-A
*/
public class Dog extends Mammal {
public void speak(){
System.out.println("Arf! arf!");
}
Duck.java
package edu.praktikumpbo.projectspeak;
/**
*
* @author Febri S
* 21103016
* SI 05-A
*/
public class Duck extends Mammal{
public void speak(){
System.out.println("Quack! Quack!");
}
Horse.java
package edu.praktikumpbo.projectspeak;
/**
*
* @author Febri S
* 21103016
* SI 05-A
*/
public class Horse extends Mammal {
public void speak(){
System.out.println("Whinny! Whinny!");
}
}
Mammal.java
package edu.praktikumpbo.projectspeak;
/**
*
* @author Febri S
* 21103016
* SI 05-A
*/
public class Mammal {
protected String name;
MikeWallace.java
package edu.praktikumpbo.projectspeak;
/**
*
* @author Febri S
* 21103016
* SI 05-A
*/
public class MikeWallace extends Mammal{
public void speak(){
System.out.println("Can you honestly look the American people in the eye and say
that?");
}
}
MorleySafer.java
package edu.praktikumpbo.projectspeak;
/**
*
* @author Febri S
* 21103016
* SI 05-A
*/
public class MorleySafer extends Mammal{
public void speak(){
System.out.println("Can I ask you a few questions about your 1987 tax statement?");
}
Owl.java
package edu.praktikumpbo.projectspeak;
/**
*
* @author Febri S
* 21103016
* SI 05-A
*/
public class Owl extends Mammal{
public void speak(){
System.out.println("Whoo! Whoo!");
}
@Override
public void sleep(){
System.out.println(" "); //Owl makes no noise when sleeping
}
}
Output
V. UNGUIDED 1
Source Code
ProjectPegawaiPerusahaan.java
package edu.praktikumpbo.projectphonetriall;
import java.util.Scanner;
/**
*
* @author Febri S
* 21103016
* SI 05-A
*/
public class ProjectPhoneTriall {
while (true) {
System.out.println("=== APLIKASI INTERFACE ===");
System.out.println("[1] Nyalakan HP");
System.out.println("[2] Matikan HP");
System.out.println("[3] Perbesar Volume");
System.out.println("[4] Kecilkan Volume");
System.out.println("[0] Keluar");
System.out.println("--------------------------");
System.out.print("Pilih aksi> ");
aksi = input.nextLine();
if(aksi.equalsIgnoreCase("1")){
febri.turnOnThePhone();
} else if (aksi.equalsIgnoreCase("2")){
febri.turnOffThePhone();
} else if (aksi.equalsIgnoreCase("3")){
febri.makePhoneLouder();
} else if (aksi.equalsIgnoreCase("4")){
febri.makePhoneSilent();
} else if (aksi.equalsIgnoreCase("0")){
System.exit(0);
} else {
System.out.println("Kamu memilih aksi yang salah!");
}
}
Sales.java
package edu.praktikumpbo.projectpegawaiperusahaan;
/**
*
* @author User
*/
public class Sales {
private int nip;
private String nama;
private String alamat;
private int thn_kerja;
private int jmlPelanggan;
private int gajiPokok;
private int gajiAkhir;
//methods
public Sales(){
//constructor
System.out.println("Konstruktor sales dijalankan..");
}
//fungsi mutator
public void setNip(int Nip){
nip=Nip;
}
public void setNama(String Nama){
nama=Nama;
}
public void setAlamat(String Alamat){
alamat=Alamat;
}
public void setThn_kerja(int Thn_kerja){
thn_kerja=Thn_kerja;
}
public void setGajiPokok(int GajiPokok){
gajiPokok=GajiPokok;
}
public void setJmlPelanggan(int JmlPelanggan){
jmlPelanggan=JmlPelanggan;
}
public void setSales(int gajiPokok){
gajiPokok=5000000;
gajiAkhir=(int)(gajiPokok+(jmlPelanggan * 50000));
}
Satpam.java
package edu.praktikumpbo.projectpegawaiperusahaan;
/**
*
* @author User
*/
public class Satpam {
private int nip;
private String nama;
private String alamat;
private int thn_kerja;
private int gajiPokok;
private int jamLembur;
private int gajiAkhir;
//methods
public Satpam(){
System.out.println("Konstruktor satpam dijalankan..");
}
//fungsi mutator
public void setNip(int Nip){
nip=Nip;
}
public void setNama(String Nama){
nama=Nama;
}
public void setAlamat(String Alamat){
alamat=Alamat;
}
public void setThn_kerja(int Thn_kerja){
thn_kerja=Thn_kerja;
}
public void setJamLembur(int JamLembur){
jamLembur=JamLembur;
}
public void setGajiPokok(int GajiPokok){
gajiPokok=GajiPokok;
}
public void setSatpam(int gajiPokok){
gajiAkhir = (int) (gajiPokok + (jamLembur * 10000));
}
Manjer,java
package edu.praktikumpbo.projectpegawaiperusahaan;
/**
*
* @author User
*/
public class Manajer {
private String nama;
private String alamat;
private int gajiPokok;
private String divisi;
private int tunjangan;
private int gajiAkhir;
private int lamaKerja;
//methods
public Manajer(){
//constructor
System.out.println("Konstruktor manajer dijalankan..");
}
//fungsi mutator
public void setNama(String Nama){
nama=Nama;
}
public void setAlamat(String Alamat){
alamat=Alamat;
}
public void setGajiPokok(int GajiPokok){
gajiPokok=GajiPokok;
}
public void setDivisi(String Divisi){
divisi=Divisi;
}
public void setLamaKerja(int LamaKerja){
lamaKerja=LamaKerja;
}
public void setInfo(){
gajiPokok=7000000;
Output