0% found this document useful (0 votes)
60 views

Listing Program: Tugas Praktikum

The document discusses inheritance in Java programming through examples of classes, subclasses, and methods. It provides code listings for inheritance examples and homework assignments. The examples demonstrate overriding methods from superclasses, using the keywords 'super' and 'this', and applying inheritance concepts. The homework assignments provide additional practice with inheritance by creating subclasses that extend existing classes and override or access methods and fields.

Uploaded by

danang aryo
Copyright
© Attribution Non-Commercial (BY-NC)
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
60 views

Listing Program: Tugas Praktikum

The document discusses inheritance in Java programming through examples of classes, subclasses, and methods. It provides code listings for inheritance examples and homework assignments. The examples demonstrate overriding methods from superclasses, using the keywords 'super' and 'this', and applying inheritance concepts. The homework assignments provide additional practice with inheritance by creating subclasses that extend existing classes and override or access methods and fields.

Uploaded by

danang aryo
Copyright
© Attribution Non-Commercial (BY-NC)
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 10

Tugas Praktikum

Listing program
class Base{
//mendefinisikan method test() tanpa parameter
public void test(){
System.out.println("Method di dalam kelas Induk");
}
}
class Turunan extends Base{
//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 Fungsi{
public static void main (String[] args) {
Turunan kuro = new Turunan();
kuro.test();
kuro.test("inheritance");
}
}

Tugas Rumah

Listing program:

class kuro{
int r;
int t;
void TampilkanNilai(){
System.out.println("Nilai x : " + r + ", y : " + t);
}
}

class penyu extends kuro {


int e;
void TampilkanJumlah(){
System.out.println("Jumlah : " + (r+t+e));
}
}

class Inheritance{
public static void main(String[] args){
kuro varsuperOb = new kuro();
penyu varsubOb = new penyu();

System.out.println("SuperClass");
varsuperOb.r = 10;
varsuperOb.t = 20;
varsuperOb.TampilkanNilai();

System.out.println("SubClass");

//member superclass dapat diakses dari


//subclass-nya
varsubOb.r = 5;
varsubOb.t = 4;
varsubOb.TampilkanNilai();

System.out.println("SubClass Jumlah");

//member tambahan yang hanya ada pada subclass


varsubOb.e = 30;
varsubOb.TampilkanJumlah();

System.out.println("SubClass");

varsubOb.r = 15;
varsubOb.t = 14;
varsubOb.TampilkanNilai();

System.out.println("SuperClass");
varsuperOb.r = 10;
varsuperOb.t = 20;
//super.x = 100; error
//super.y = 200; error
varsuperOb.TampilkanNilai();

System.out.println("SubClass Jumlah");
varsubOb.e = 60;
varsubOb.TampilkanJumlah();

}
}
Latihan 5

Listing program:

class Bicycle{
// the Bicycle class has three fields
protected int cadence;
protected int gear;
protected int speed;
//the Bicycle class has one construktor
public Bicycle(int startcadence,int startspeed,int startgear){
gear=startgear;
cadence=startcadence;
speed=startspeed;
}
//the Bicycle 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 MountainBike extends Bicycle{
//the MountainBike subclass adds one field
public int seatHeight;
//the MountainBike subclass has one construktor
public MountainBike(int startHeight,int startcadence,int startspeed,int
startgear){
super(startcadence,startspeed,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(0,0,0,0);
System.out.println("gear=" +MB.gear);
System.out.println("speed="+MB.speed);
System.out.println("speed="+MB.seatHeight);
System.out.println("speed="+MB.cadence);
MB.setgear(1);
MB.setHeight(2);
MB.speedUp(1);
MB.setcadence(1);
System.out.println("berjalan normal");
System.out.println("gear=" +MB.gear);
System.out.println("speed="+MB.speed);
System.out.println("speed="+MB.seatHeight);
System.out.println("speed="+MB.cadence);
MB.setgear(2);
MB.setHeight(2);
MB.speedUp(2);
MB.setcadence(4);
System.out.println("mendadaki tanjakan");
System.out.println("gear=" +MB.gear);
System.out.println("speed="+MB.speed);
System.out.println("speed="+MB.seatHeight);
System.out.println("speed="+MB.cadence);
MB.setgear(3);
MB.setHeight(3);
MB.speedUp(6);
MB.setcadence(7);
System.out.println("turun");
System.out.println("gear=" +MB.gear);
System.out.println("speed="+MB.speed);
System.out.println("speed="+MB.seatHeight);
System.out.println("speed="+MB.cadence);
MB.setgear(0);
MB.setHeight(0);
MB.applyBrake(9);
MB.setcadence(0);
System.out.println("berhenti");
System.out.println("gear=" +MB.gear);
System.out.println("speed="+MB.speed);
System.out.println("speed="+MB.seatHeight);
System.out.println("speed="+MB.cadence);
}
}
Latihan 1

a. Listing program
class Satu{
private int a=5;
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 Dua extends Satu{
private int b=7;
public void BacaSuper(){
System.out.println("nilai b:"+b);
terprotek();
info();
}
}
class TestSatuDua{
public static void main(String [] Abc){
Dua D2= new Dua ();
D2.BacaSuper();
D2.info();

Satu S1=new Satu();


S1.terprotek();
S1.info();
}
}

b. printsreen

c. Hilangkan S1.terprotek();
class TestSatuDua{
public static void main(String [] Abc){
Dua D2= new Dua ();
D2.BacaSuper();
D2.info();

Satu S1=new Satu();

S1.info();
}
}

d. Printsreen
e. hapus yang berekstensi .class

f. Compile TestSatuDua.java

g. Fungsi dari this.getClass.getName(); adalah

Untuk mengakses variable instans dari masing-masing objek

Latihan 2.
class Person {
private String nama;
private int usia;
// Konstruktor
public Person(String nama,int usia){
this.nama=nama;
this.usia=usia;
}
//Metode
public void info(){
System.out.println("nama:"+this.nama);
System.out.println("usia:"+this.usia);
}
}// akhir kelas Person
class Employ extends Person{
private String noPegawai;
//Konstruktor
public Employ (String noPegawai, String nama,int usia){
super(nama,usia);
this.noPegawai=noPegawai;
}
// Metode
public void info(){
System.out.println("No. Pegawai:"+this.noPegawai);
super.info();
}
}// akhir kelas Employ
public class KonstruktorSuperkelas{
public static void main(String[] args){
Employ programmer1=new Employ("123456","Edit",23);
programmer1.info();
}
}

Latihan 3.
class Animal{
public static void testClassMethod(){
System.out.println("the class method in Animal.");
}
public void testInstanceMethod(){
System.out.println("The instance method in Animal.");
}
}
public class Cat extends Animal{
public static void testClassMethod(){
System.out.println("the class method in Cat");
}
//meng-override method pada class Animal
public void testInstanceMethod(){
System.out.println("the instance method in Cat.");
}
public static void main(String[] args){
Cat myCat=new Cat();
Animal myAnimal=myCat;
Animal.testClassMethod();
myAnimal.testInstanceMethod();
}
}
Latihan 4.
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 tampikanNilai()
//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(100);
obj.setB(200);
//akan memanggil method yang terdapat pada kelas B
obj.tampilkanNilai();
}
}
Hari / tanggal praktikum : Senin, 22 Maret 2010

TUJUAN

 Mampu memahami konsep Inheritance(Pewarisan).


 Mampu mendefinisikan superclasses dan subclasses
 Override method dari superclasses
 Menerapkan keyword this

DASAR TEORI
1. Pewarisan
Menciptakan kelas baru dari satu atau lebih kelas yang sudah ada. Konsekuensinya
adalah terjadi pewarisan field/method tertentu dari kelas yang sudah ada sebelumnya
(superclass/baseclass) kepada kelas yang baru(subclass).
2. Keyword super
Memanggil konstruktor dari base classes.
3. Keyword this
Dalam body setiap method dan konstruktor terdapat suatu variable implicit, yaitu
variable yang tidak nampak dalam kelas, tetapi sebenarnya ada dan digunakan oleh
compiler untuk merujuk objek yang memanggil method atau konstruktor itu.
4. Overriding
Pendefinisian ulang method yang sama pada subclass. Method overriding adalah
mendefinisikan kembali method yang sama, baik nama method maupun signature atau
parameter yang diperlukan dalam subclass

DAFTAR PUSTAKA
Benny Hermawan, Menguasai Java 2 & OOP. 2004. Andi: Yogyakarta.
http://dhewa-nugraha.blogspot.com
http://ditagiri.blogspot.com
Rijalul Fikri, dkk. Pemrograman JAVA. 2005. Andi: Yogyakarta.

You might also like