# DOWNLOAD versi Lengkap DOC --> [DOWNLOAD] via 4shared.com
A. LATIHAN
Latihan 1
Tuliskan ketiga class berikut dalam
3 file berbeda, jalankan!
class
Pertama
{
private int
a = 10;
protected
void terprotek()
{
System.out.println("Method
ini hanya untuk anaknya");
}
public void
info()
{
System.out.println("a=
"+a);
System.out.println("Dipanggil
pada = "+this.getClass().getName());
}
}
class Kedua
extends Pertama
{
private int
b = 8;
protected
void BacaSuper()
{
System.out.println("Nilai
b = "+b);
terprotek();
info();
}
}
class
TestPertamaKedua
{
public
static void main (String[]args)
{
Kedua D2 =
new Kedua();
D2.
BacaSuper();
D2. info();
Pertama S1
= new Pertama();
S1.
terprotek();
S1. info();
}
}
LATIHAN 2
Pada latihan 2 ini kita akan menggunakan keyword super
untuk memanggil konstruktor dari kelas induk. Tuliskan ketiga class berikut
dalam 3 file berbeda dan jelankan!
class Person
{
protected String name;
protected int age;
public Person(String name, int age)
{
this.name = name;
this.age = age;
}
//metode
public void info()
{
System.out.println("Nama : "+this.name);
System.out.println("Age : "+this.age);
}
//akhir kelas program
}
class Employ extends Person
{
private String noKaryawan;
//konstruktor
public Employ (String
noKaryawan, String name, int age)
{
super (name, age);
this.noKaryawan =
noKaryawan;
}
//metode
public void info()
{
System.out.println("No.
Karyawan : "+this.noKaryawan);
super.info();
}
}
public class KonstruktorSuperKelas
{
public static void main (String[]args)
{
Employ programer1 = new Employ ("12345678",
"Yanto", 32);
programer1.info();
}
}
Output :
LATIHAN 3
Tuliskan program berikut dan jalankan!
public class Hewan
{
public static void testClassMethod()
{
System.out.println("The Class Method in
Hewan...");
}
public void testInstanceMethod()
{
System.out.println("The Intance Method in
Hewan...");
}
}
//mengoverwrite
method pada class hewan
public class Gajah extends Hewan
{
public static void testClassMethod()
{
System.out.println("The
class method in Hewan...");
}
//mengoverride method pada kelas Hewan
public void testInstancemethod()
{
System.out.println("The
Instance method in Gajah...");
}
public static void main (String[]args)
{
Gajah
myGajah=new Gajah();
Hewan
myHewan=myGajah;
Hewan.testClassMethod();
myHewan.testInstanceMethod();
}
}
Output :
LATIHAN 4
Tulis dan simpan code program berikut (perhatikan
keyword super pada program)
class A
{
private int a;
public void setA(int nilai)
{
a = nilai;
}
public int getA()
{
return a;
}
public void tampilkanNilai()
{
System.out.println("Nilai a : "+getA());
}
}
class B extends A
{
private int b;
public void setB(int nilai)
{
b = nilai;
}
public int getB()
{
return b;
}
//melakukan override terhadap method tampilkanNilai()
//yang terdapat pada kelas A
public void tampilkanNilai()
{
super.tampilkanNilai(); //memanggil method dalam kelas
A
System.out.println ("Nilai b : "+getB());
}
}
class DemoOverride2
{
public static void main (String[]args)
{
B obj = new B();
obj.setA(50);
obj.setB(150);
//akan memanggil method yang terdapat pada kelas B
obj.tampilkanNilai();
}
}
Output :
LATIHAN 5
Tulis dan simpan code program berikut, jalankan!
class Truck{
//the
truck class has three fields
public
int cadence;
public
int gear;
public
int speed;
public
void Truck(int startCadence, int startSpeed, int startGear){
gear
= startGear;
cadence
= startCadence;
speed
= startSpeed;
}
//the
truck class has four methods
public
void setCadence(int newValue){
cadence
= newValue; }
public
void setGear(int newValue) {
gear
= newValue; }
public
void applyBrake(int decrement) {
speed
-= decrement; }
public
void speedUp(int increment) {
speed
+= increment; }
}
public class MountainTruck extends
Truck{
//the MountainTruck subclass adds one
field
public int seatHeight;
//the MountainTruck subclass has one
constructor
public void MountainTruck(int
startHeight, int startCadence, int startSpeed, int startGear){
super.Truck(startHeight,startCadence,startGear);
seatHeight=startHeight;
}
//the MountainTruck subclass add one
method
public void setHeight(int newValue) {
seatHeight = newValue;
}
public static void main(String[]abc){
System.out.println("Mulai
Berjalan");
MountainTruck MB = new MountainTruck();
MB.MountainTruck(0,0,0,0);
System.out.println("gear =
"+MB.gear);
System.out.println("speed =
"+MB.speed);
MB.setGear(2);
MB.speedUp(2);
System.out.println("gear =
"+MB.gear);
System.out.println("speed =
"+MB.speed);
MB.speedUp(2);
System.out.println("gear =
"+MB.gear);
System.out.println("speed =
"+MB.speed);
}
}
Output :
Modifikasi class MountainTruck sedemikian
sehingga mensimulasikan proses perjalanan sepeda dari possisi diam sampai
berjalan normal, kemuadian diikuti dengan berjalan di tanjakan jalan,
dilanjutkan lagi menuruni tanjakan dan diakhiri dengan berhenti. Code yang
dihasilkan :
Source Code
public class MountainBike
extends Truck {
//the mountainBike subclass adds one field
public int seatHeight;
//the MountainBike subclass has one constructor
public void MountainBike(int startHeight, int startCadence, int
startSpeed, int startGear) {
super.Truck(startHeight, startCadence, startGear);
seatHeight = startHeight;
}
//the MountainBike subclass adds one method
public void setHeight(int newValue) {
seatHeight = newValue;
}
public static void main(String[] abc) {
System.out.println("Mulai Berjalan");
MountainBike MB = new MountainBike();
MB.MountainBike(0,0,0,0);
System.out.println("gear = "+MB.gear);
System.out.println("speed = "+MB.speed);
MB.setGear(2);
MB.speedUp(2);
System.out.println("Berjalan normal");
System.out.println("gear = "+MB.gear);
System.out.println("speed = "+MB.speed);
MB.speedUp(2);
System.out.println("gear = "+MB.gear);
System.out.println("speed = "+MB.speed);
MB.setGear(1);
MB.applyBrake(1);
System.out.println("Berjalan di Tanjakan");
System.out.println("gear = "+MB.gear);
System.out.println("speed = "+MB.speed);
MB.setGear(2);
MB.speedUp(3);
System.out.println("Berjalan Turun Tanjakan");
System.out.println("gear = "+MB.gear);
System.out.println("speed = "+MB.speed);
MB.setGear(0);
MB.applyBrake(6);
System.out.println("Berhenti");
System.out.println("gear = "+MB.gear);
System.out.println("speed = "+MB.speed);
}
}
B.
TUGAS PRAKTIKUM
program dengan membuat satu method pada kelas turunan
yang meng-override method pada kelas induk menguji ciba fungsionalitas kedua
method tersebut dengan class uji.
Syntac:
class Induk{
//mendefinisikan method
test() tanpa parameter
public void test(){
System.out.println("Method
di dalam kelas induk");}
}
_____________________________________________________________
class Turunan extends Induk{
//melakukan overload
terhadap method test(), bukan override
public void test(String s){
System.out.println("Method
di dalam kelas turunan");
System.out.println("s :\""
+ s + "\"");
}
}
_____________________________________________________________
class uji{
public static void
main(String[]args){
Turunan uji = new Turunan();
uji.test();
uji.test("Mohammad
Rizky Kurniawan");
}
}
Output :
C. TUGAS RUMAH
1.
Buatlah sebuah
program dengan menerapkan “inheritance” dalam kehidupan perkualiahan!
Contoh :
-
Induk : Fakultas
-
Anak : Jurusan
Syntak:
Keterangan
: Class Jurusan mempunyai dua methode yaitu cetakJurusan
yang berfungsi untuk mencetak nama Jurusan yang dikirimkan lewat tesMain dan
cetakKajur yang berfungsi untuk mencetak nama kajur.
class Fakultas
{
String
nmFakultas="";
String
nmKajur="";
void
cetakFakultas(String namaFakultas)
{
nmFakultas=namaFakultas;
System.out.println("Nama
Fakultas :" + nmFakultas);
}
void cetakKajur(String
namaKajur)
{
nmKajur=namaKajur;
System.out.println("Nama
Rektor :" + nmKajur);
}
}
Keterangan : Class Jurusan mempunyai dua methode yaitu
cetakJurusan yang berfungsi untuk mencetak jumlah jurusan yang dikirimkan lewat
tesMain dan cetakDosen yang
berfungsi untuk mencetak jumlah dosen. Class Jurusan menuruni sifat yang
dimiliki class induk Fakultas, yang statemennya
ditunjukkan dengan class Jurusan extends Fakultas
class Jurusan extends
Fakultas
{
int jurusan = 0;
int dosen = 0;
void cetakJurusan
(int jmlJurusan)
{
jurusan = jmlJurusan;
System.out.println("Jumlah
Jurusan:" + jurusan);
}
void cetakDosen(int
jmlDosen)
{
dosen = jmlDosen;
System.out.println("JUmlah
Dosen :" + dosen);
}
}
Keterangan :
Pada class tesMain dilakukan instansiasi terhadap class jurusan yang ditunjukkan dengan statament Jurusan myjurusan = new jurusan();.
Pada class tesMain dilakukan instansiasi terhadap class jurusan yang ditunjukkan dengan statament Jurusan myjurusan = new jurusan();.
class TesMain
{
public static void main(String[] args)
{
Jurusan myjurusan = new Jurusan();
System.out.println("---------------------------")
;
myjurusan.cetakFakultas("Fakultas Teknik
Universitas Malang");
myjurusan.cetakKajur("Bapak Slamet");
myjurusan.cetakJurusan(3);
myjurusan.cetakDosen(200);
System.out.println("---------------------------")
;
}
}
Output :
0 komentar
Post a Comment