Konsep Inheritance (Pewarisan Kelas) Pada Java
Kelas Kendaraan Bermotor ini sebagai Super Class, sedangkan 2 kelas lainnya Mobil dan Motor merupakan sub class nya.
KendaraanBermotor.java (Super Class)
/*
* To change this license header, choose License Headers in Project Properties.
* To change this template file, choose Tools | Templates
* and open the template in the editor.
*/
package pbo1praktikum5;
/**
*
* @author PSSI
*/
public class KendaraanBermotor {
int jumlahRoda;
String jenisBahanBakar;
int isiTanki;
boolean power;
public KendaraanBermotor(int jumlahRoda, String jenisBahanBakar, int isiTanki) {
this.jumlahRoda = jumlahRoda;
this.jenisBahanBakar = jenisBahanBakar;
this.isiTanki = isiTanki;
this.power = false;
}
public void nyalakan(){
this.power=true;
System.out.println("VROM , Mesin Menyala !");
}
public void matikan(){
this.power=false;
System.out.println("Pffft , Mesin Mati !");
}
public void isiBensin(int isi){
if (power == true) {
System.out.println("MATIKAN ATAU MATIII");
}else {
this.isiTanki += isi;
System.out.println("Bensin terisi sebanyak " +isi+ "L");
}
}
public void cek(){
System.out.println("-----------------------------------");
System.out.println("Mesin : " +power);
System.out.println("Bensin : " +jenisBahanBakar);
System.out.println("Isi Tanki : "+isiTanki);
}
public void GAS(){
if (power == false) {
System.out.println("MESIN MATI SAKDIK, " + "Nyalakan Dulu!");
}else{
if (isiTanki <= 10) {
System.out.println("BENSIN KURANG, " + "ISI DULU BOS");
}else{
System.out.println("Buruan, "+ "Berjalan sejauh 10 km");
isiTanki -= 10;
}
}
}
}
Mobil.java
/*
* To change this license header, choose License Headers in Project Properties.
* To change this template file, choose Tools | Templates
* and open the template in the editor.
*/
package pbo1praktikum5;
/**
*
* @author PSSI
*/
public class Mobil extends KendaraanBermotor {
boolean pintu;
int bancadangan;
int jumlahpintu;
public Mobil(int jumlahRoda, String jenisBahanBakar, int isiTangki, int bancadangan, int jumlahpintu) {
super(jumlahRoda, jenisBahanBakar, isiTangki);
this.bancadangan=bancadangan;
this.jumlahpintu=jumlahpintu;
pintu=false;
}
public int getBancadangan() {
return bancadangan;
}
public void setBancadangan(int bancadangan) {
this.bancadangan = bancadangan;
}
public int getJumlahpintu() {
return jumlahpintu;
}
public void setJumlahpintu(int jumlahpintu) {
this.jumlahpintu = jumlahpintu;
}
public void gantibancadangan(){
bancadangan-=1;
}
public void bukaPintu(){
pintu = true;
System.out.println("Pintu terbuka");
}
public void tutupPintu(){
pintu=false;
System.out.println("Pintu tertutup");
}
public void GAS(){
if (pintu == true) {
System.out.println("OITTT, Pintunya buka dulu woy masih nutup tuh");
}
if (power== true) {
isiTanki -= 10;
System.out.println("Mobil jalan sejauh 10 km");
} else {
System.out.println("NYALAKAN DULU BUNG !");
}
}
}
Motor.java (Sub Class)
/*
* To change this license header, choose License Headers in Project Properties.
* To change this template file, choose Tools | Templates
* and open the template in the editor.
*/
package pbo1praktikum5;
/**
*
* @author PSSI
*/
public class Motor extends KendaraanBermotor {
boolean jagrak;
public Motor(int jumlahRoda, String jenisBahanBakar, int isiTanki) {
super(jumlahRoda, jenisBahanBakar, isiTanki);
jagrak = true;
}
public void njagrak(){
jagrak = true;
System.out.println("Jagrak dulu boss, Motornya capek ...");
}
public void angkatJagrak(){
jagrak = false;
System.out.println("Sudah tidak dijagrak");
}
public void GAS(){
if (jagrak == true) {
System.out.println("OITTT, Masih dijagrak");
}
if (power== true) {
isiTanki -= 10;
System.out.println("Motor jalan sejauh 10 km");
} else {
System.out.println("NYALAKAN DULU BUNG !");
}
}
}
MainClass.java (Sub Class)
/*
* To change this license header, choose License Headers in Project Properties.
* To change this template file, choose Tools | Templates
* and open the template in the editor.
*/
package pbo1praktikum5;
/**
*
* @author PSSI
*/
public class PBO1praktikum5 {
/**
* @param args the command line arguments
*/
public static void main(String[] args) {
KendaraanBermotor mot = new KendaraanBermotor(3, "Bensin", 30);
Mobil jazz = new Mobil (4 , "Bensin" , 1, 2, 2);
// mot.cek();
// mot.nyalakan();
// mot.GAS();
System.out.println("================================");
jazz.GAS();
jazz.nyalakan();
jazz.GAS();
jazz.bukaPintu();
jazz.tutupPintu();
jazz.nyalakan();
jazz.GAS();
jazz.bukaPintu();
jazz.GAS();
// Motor yamah = new Motor(2 , "Bensin" ,1);
// mot.cek();
// mot.nyalakan();
// mot.GAS();
// System.out.println("==============================");
// yamah.GAS();
// mot.GAS();
// mot.nyalakan();
// mot.GAS();
// mot.cek();
// mot.GAS();
// mot.cek();
// System.out.println("=============================");
// Motor yamah = new Motor(2 , "Bensin" , 1);
// yamah.cek();
// yamah.nyalakan();
// yamah.GAS();
// yamah.cek();
// yamah.isiBensin(10);
// yamah.matikan();
// yamah.isiBensin(10);
// yamah.nyalakan();
}
}
Nah, sekian contoh pewarisan kelas (inheritance) pada java.. semoga dapat menjadi referensi teman - teman dalam belajar. Terima kasih atas kunjungannya