Anda di halaman 1dari 56

1

MODUL 2
KELAS DAN OBJEK
Latihan :
Lakukan praktek diatas sebagai bentuk latihan dan lakukan evaluasi

Program 2.1 Contoh pembuatan class

package impelmetasikaryawan;
public class karyawan {
String ID,nama,divisi;
Double gaji;
}

Program 2.2 Contoh instansiasi objek dan pengaksesan data


pada objek.
package impelmetasikaryawan;
public class Impelmetasikaryawan {
public static void main(String[] args) {
{

karyawan Kevin = new karyawan();


Kevin.ID = "1714311007";
Kevin.divisi = "Marketing";
Kevin.nama = "Kevin";
Kevin.gaji = 2500000.0;
System.out.println("Data KAryawan");
System.out.println("ID : " + Kevin.ID);
System.out.println("Nama : " + Kevin.nama);
System.out.println("Divisi : " + Kevin.divisi);
System.out.println("Gaji : " + Kevin.gaji);
}
}
}
2

Gambar 2.2 Hasil eksekusi program 2.2

Program 2.3 Contoh instansiasi lebih dari satu objek dari satu kelas
yang sama

package impelmetasikaryawan;
public class Impelmetasikaryawan {
public static void main(String[] args) {
{
karyawan Kevin = new karyawan();
karyawan Haris = new karyawan();

Kevin.ID = "1714311007";
Kevin.divisi = "Marketing";
Kevin.nama = "Kevin";
Kevin.gaji = 2500000.0;

Haris.ID = "171431104";
Haris.divisi = "Mareting";
Haris.nama = "Haris";
Haris.gaji = 1500000.0;

System.out.println("Data KAryawan");
System.out.println("ID : " + Kevin.ID);
System.out.println("Nama : " + Kevin.nama);
System.out.println("Divisi : " + Kevin.divisi);
System.out.println("Gaji : " + Kevin.gaji);

System.out.println("Data KAryawan");
System.out.println("ID : " + Haris.ID);
System.out.println("Nama : " + Haris.nama);
System.out.println("Divisi : " + Haris.divisi);
System.out.println("Gaji : " + Haris.gaji);
3

}
}
}

Gambar 2.3 Hasil eksekusi program 2.3

Program 2.4 Contoh pengaruh referensi objek (1)


package impelmetasikaryawan;
public class PengaruhReferensiObjek1 {
public static void main(String[] args){
karyawan Karyawan001 = new karyawan();
karyawan Karyawan002 = Karyawan001;

Karyawan001.nama = "Kevin";
Karyawan001.divisi = "HRD";

System.out.println("Data Karyawan001");
System.out.println("Nama : " + Karyawan001.nama);
System.out.println("Divisi : " +
Karyawan001.divisi);
System.out.println(" ");
System.out.println("Data Karyawan002");
System.out.println("Nama : " + Karyawan002.nama);
System.out.println("Divisi : " +
Karyawan002.divisi);

}
}

Gambar 2.4 hasil eksekusi program 2.4


4

Program 2.5 Contoh pengaruh referensi objek (2)


package impelmetasikaryawan;
public class PengaruhReferensiObjek2 {
public static void main(String[] args) {

karyawan Karyawan001 = new karyawan();


karyawan Karyawan002 = Karyawan001;

Karyawan001.nama = "Kevin";
Karyawan001.divisi = "HRD";

System.out.println("Data Karyawan001");
System.out.println("Nama : " + Karyawan001.nama);
System.out.println("Divisi : " +
Karyawan001.divisi);
System.out.println(" ");
System.out.println("Data Karyawan002");
System.out.println("Nama : " + Karyawan002.nama);
System.out.println("Divisi : " +
Karyawan002.divisi);

Karyawan002 = new karyawan();


Karyawan002.nama="Haris";
Karyawan002.divisi="Produksi";

System.out.println(" ");
System.out.println("Setelah Perubahan Referensi");
System.out.println(" ");
System.out.println("Data Karyawan001");
System.out.println("Nama : " + Karyawan001.nama);
System.out.println("Divisi : " +
Karyawan001.divisi);
5

System.out.println(" ");
System.out.println("Data Karyawan002");
System.out.println("Nama : " + Karyawan002.nama);
System.out.println("Divisi : " +
Karyawan002.divisi);
} }

Gambar 2.5 Hasil eksekusi program 2.5

Program 2.6 Penambahan method void pada deklarasi kelas Karyawan


package impelmetasikaryawan;
public class karyawan {
String ID, nama, divisi;
Double gaji;
void cetakData() {
System.out.println("Data Karyawan ");
System.out.println("ID : " + ID);
System.out.println("Nama : " + nama);
System.out.println("Divisi : " + divisi);
System.out.println("Gaji : " + gaji);
}}

Program 2.7 Contoh pemanggilan method void


package impelmetasikaryawan;
6

public class ImplementasiMethodVoid {


public static void main(String[] args) {
karyawan Karyawan001 = new karyawan();
Karyawan001.ID = "1714311007";
Karyawan001.nama = "Kevin";
Karyawan001.divisi = "Keuangan";
Karyawan001.gaji = 1850000.0;
Karyawan001.cetakData();
}
}

Gambar 2.6 Hasil eksekusi program 2.7

Program 2.8 Contoh implementasi method non-void.


package impelmetasikaryawan;
public class karyawan {
String ID, nama, divisi;
double gaji;
void cetakData() {
System.out.println("Data Karyawan : ");
System.out.println("ID : " + ID);
System.out.println("Nama : " + nama);
System.out.println("Divisi : " + divisi);
System.out.println("Gaji : " + gaji);
}
double hitungSumbanganZakat() {
double zakat = gaji * 0.025;
return zakat;
}
}

Program 2.9 Pemanggilan method non-void


package impelmetasikaryawan;
public class ImplementasiMethodNonVoid {
7

public static void main(String[] args) {


karyawan karyawan001 = new karyawan();
karyawan001.ID = "1714311007";
karyawan001.nama = "Kevin";
karyawan001.divisi = "Keuangan";
karyawan001.gaji = 1850000;
karyawan001.cetakData();
System.out.println("Sumbangan Zakat : " +
karyawan001.hitungSumbanganZakat());
}
}

Gambar 2.7 Hasil eksekusi program 2.9

Program 2.10 Implementasi method dengan parameter pada kelas


Karyawan.
package impelmetasikaryawan;
public class karyawan {
String ID, nama, divisi;
double gaji;
void isiData(String kode, String Nama, String Div,
double Gaji) {
ID = kode;
nama = Nama;
divisi = Div;
gaji = Gaji;
}
void cetakData() {
System.out.println("Data Karyawan : ");
System.out.println("ID : " + ID);
System.out.println("Nama : " + nama);
System.out.println("Divisi : " + divisi);
System.out.println("Gaji : " + gaji);
}
8

double hitungSumbanganZakat() {
double zakat = gaji * 0.025;
return zakat;
}
}

Program 2.11 Pemanggilan method berparameter pada kelas Karyawan


package impelmetasikaryawan;
public class ImplementasiMethodBerparameter {
public static void main(String[] args) {
karyawan karyawan001 = new karyawan();
karyawan001.isiData("1714311007", "Kevin",
"Marketing", 2350000.0);
karyawan001.cetakData();
}
}

Gambar 2.8 Hasil eksekusi program 2.11

Program 2.12 Deklarasi kelas Karyawan dengan constructor dinamis


package impelmetasikaryawan;
public class karyawan {
String ID, nama, divisi;
double gaji;
karyawan(String kode, String Nama, String Div,
double Gaji) {
ID = kode;
nama = Nama;
divisi = Div;
gaji = Gaji;
}
void cetakData() {
System.out.println("Data Karyawan :");
9

System.out.println("ID : " + ID);


System.out.println("Nama : " + nama);
System.out.println("Divisi : " + divisi);
System.out.println("Gaji : " + gaji);
}
double hitungSumbanganZakat() {
double zakat = gaji * 0.025;
return zakat;
}
}

Program 2.13 Instansiasi objek Karyawan dengan menggunakan


constructor dinamis.
package impelmetasikaryawan;
public class ImplementasiCOnstructorDinamis {
public static void main(String[] args) {
karyawan karyawan001 = new karyawan("1714311007", "Kevin", "HRD",
5150000);
karyawan001.cetakData();
}
}

Gambar 2.9 Hasil eksekusi program 2.13

Program 2.14 Kelas Pembagian dengan method yang di-overload


public class Pembagian {

int bagi(int a, int b) {


return a / b;
}

double bagi(double a, double b) {


return a / b;
}
10

Program 2.15 Pemanggilan method yang di-overload pada kelas


Pembagian
public class ContohOverloadMethod {
public static void main(String[] args) {
Pembagian b = new Pembagian();
int x = b.bagi(10, 2);
double y = b.bagi(10.0, 2.0);
System.out.println("Hasil bagi tipe int = " + x);
System.out.println("Hasil bagi tipe double = " +
y);
}
}

Gambar 2.9 hasil eksekusi program 2.15

Program 2.16 Contoh overload terhadap constructor kelas Karyawan


package impelmetasikaryawan;
public class karyawan {
String ID, nama, divisi;
double gaji;

karyawan(String ID, String nama) {


this.ID = ID;
this.nama = nama;
}

karyawan(String ID, String nama, String divisi,


double gaji) {
this.ID = ID;
this.nama = nama;
this.divisi = divisi;
this.gaji = gaji;
}
11

void cetakData() {
System.out.println("Data Karyawan :");
System.out.println("ID : " + ID);
System.out.println("Nama : " + nama);
System.out.println("Divisi : " + divisi);
System.out.println("Gaji : " + gaji);
}
double hitungSumbanganZakat() {
double zakat = gaji * 0.025;
return zakat;
}
}

Program 2.19 Instansiasi objek Karyawan menggunakan constructor


yang telah dioverload
package impelmetasikaryawan;
public class ImplemetasiOverloadConstructor {
public static void main(String[] args) {

karyawan karyawan001 = new karyawan("1714311007",


"Kevin");

karyawan karyawan002 = new karyawan("1714311033",


"Shierly", "Keuangan", 2250000);
karyawan001.cetakData();
System.out.println("");
karyawan002.cetakData();
}
}

Gambar 2.10 Hasil eksekusi program 2.19


12

Tugas :
a) Buatlah sebuah program kalkulator sederhana yang didalamnya terdapat
operasi aritmatika sederhana dan terdapat validasi inputan implementasikan
program ini dengan interface class dan objek.

Source Code :
package kalkulator;

import java.util.Scanner;

public class Kalkulator {


public static void main(String[] args) {
boolean test = true;
String jawab;
Scanner scan =new Scanner(System.in);
while (test){
System.out.println("*
kalkulator *");
System.out.println("~~~~~~~~~~~~~~~~~~~~~~~
~~~~~~~~~~~~~~~~~~~~");
System.out.println("");

int operasi;
int bil1, bil2;
int hasil;
Scanner input = new Scanner(System.in);

System.out.print("Masukkan angka pertama:


");
13

bil1 = input.nextInt();
System.out.print("Masukkan angka kedua: ");
bil2 = input.nextInt();
System.out.println("Opsi hitung: ");
System.out.println("1. Penjumlahan");
System.out.println("2. Pengurangan");
System.out.println("3. Perkalian");
System.out.println("4. Pembagian");
System.out.println("");
System.out.println("Pilih opsi 1-4!");
System.out.println("Opsi hitung yang anda
pilih adalah: ");
operasi = input.nextInt();
System.out.println("");

switch (operasi) {
case 1:
hasil = bil1 + bil2;
System.out.println("Hasil
penjumlahan: ");
System.out.println(bil1 + " + " +
bil2 + " = " + hasil);
break;
case 2:
hasil = bil1 - bil2;
System.out.println("Hasil
pengurangan: ");
System.out.println(bil1 + " - " +
bil2 + " = " + hasil);
break;
case 3:
hasil = bil1 * bil2;
System.out.println("Hasil
perkalian: ");
System.out.println(bil1 + " x " +
bil2 + " = " + hasil);
break;
case 4:
hasil = bil1 / bil2;
System.out.println("Hasil
penmbagian: ");
14

System.out.println(bil1 + " : " +


bil2 + " = " + hasil);
break;
default:
System.out.println("Tidak ada opsi
hitung tersebut. Masukkan angka 1-4");
break;
}

System.out.println("");
System.out.println("");
System.out.println("~~~~~~~~~~~~~~~~~~~~~~~
~~~");
System.out.println("* Kevin leonardo
*"

System.out.println("apakah anda ingin


menghitung lagi?");
System.out.print("Jawab [yes/no]> ");
jawab = scan.nextLine();

if (jawab.equalsIgnoreCase("no")){
test = false ;
}

}
}

Keterangan :
15

Output :

b) Buatlah kelas mahasiswa dengan atribut/variabel= nama dan npm


dan mempunyai metodh: tampilkanNama, tampilkanNpm, belajar,
olahRaga, makan, minum.
Buatlah 3 objek untuk menginstantiasi kelas mahasiswa dengan atribut nama
dan npm Anda sendiri dan 2 teman Anda dan mengimplementasikan beberapa
metodh yang telah Anda definisikan dalam kelas mahasiswa.

Source Code :
package pkg1714311007_kevinleonardosutanto;
public class Mahasiswa {
String Nama,NPM,Ket;
}
16

Keterangan :

Source code :
package pkg1714311007_kevinleonardosutanto;
public class ImplementasiKelasMahasiswa {
public static void main(String[] args) {
Mahasiswa Kevin = new Mahasiswa();

Mahasiswa Haris = new Mahasiswa();

Mahasiswa Shierly = new Mahasiswa();

Mahasiswa Machmudi = new Mahasiswa();

Mahasiswa Shagi = new Mahasiswa();

//mengisi nilai ke dalam data-data Objek


Mahasiswa
Kevin.Nama = "Kevin Leonardo Sutanto";
Kevin.NPM = "1714311007";
Kevin.Ket = "Belajar, olahraga, makan,
minum";

//mengisi nilai ke dalam data-data Objek


Mahasiswa
Haris.Nama = "Ramadhian Harishn Adnan";
Haris.NPM = "1714311047";
Haris.Ket = "Belajar, olahraga, makan,
minum";

//mengisi nilai ke dalam data-data Objek


Mahasiswa
Shierly.Nama = "Yuan Shierly Alvionita";
Shierly.NPM = "1714311033";
Shierly.Ket = "Belajar, olahraga, makan,
minum";

//mengisi nilai ke dalam data-data Objek


Mahasiswa
17

Machmudi.Nama = "Machmudi";
Machmudi.NPM = "1714311030";
Machmudi.Ket = "Belajar, olahraga, makan,
minum";

//mengisi nilai ke dalam data-data Objek


Mahasiswa
Shagi.Nama = "Shagi Hisyam Alfathony";
Shagi.NPM = "1714311029";
Shagi.Ket = "Belajar, olahraga, makan,
minum";

//mencetak data-data objek mahasiswa


System.out.println("Data Mahasiswa : ");
System.out.println("Nama : " +
Kevin.Nama);
System.out.println("NPM : " +
Kevin.NPM);
System.out.println("Ket : " +
Kevin.Ket);

//mencetak data-data objek mahasiswa


System.out.println("Data Mahasiswa : ");
System.out.println("Nama : " +
Haris.Nama);
System.out.println("NPM : " +
Haris.NPM);
System.out.println("Ket : " +
Haris.Ket);

//mencetak data-data objek mahasiswa


System.out.println("Data Mahasiswa : ");
System.out.println("Nama : " +
Shierly.Nama);
System.out.println("NPM : " +
Shierly.NPM);
System.out.println("Ket : " +
Shierly.Ket);

//mencetak data-data objek mahasiswa


System.out.println("Data Mahasiswa : ");
18

System.out.println("Nama : " +
Machmudi.Nama);
System.out.println("NPM : " +
Machmudi.NPM);
System.out.println("Ket : " +
Machmudi.Ket);

//mencetak data-data objek mahasiswa


System.out.println("Data Mahasiswa : ");
System.out.println("Nama : " +
Shagi.Nama);
System.out.println("NPM : " +
Shagi.NPM);
System.out.println("Ket : " +
Shagi.Ket);
}
}

Keterangan :

MODUL 3
PEWARISAN

Latihan
Lakukan praktek diatas dan lakukan evaluasi.
19

Program 3.1 Pendefinisian Class Dosen (Gambar 3.3)


package Dosen;
public class Dosen {
protected String Nama;
protected String NIK;
protected String Jurusan;
Dosen (String namaX,String nikX, String jurX){
Nama = namaX;
NIK = nikX;
Jurusan = jurX;
}
public void view(){
System.out.println("Nama: "+Nama);
System.out.println("NIK: "+NIK);
System.out.println("Jurusan: "+Jurusan);
}

Program 3.2 Pendefinisian Class Rektor (Gambar 3.4)


package Dosen;
public class Rektor extends Dosen {
private int thn_mulai;
private int jabatan_ke;
public Rektor(String namaX, String nikX, String
jurX, int thnX, int keX) {
super(namaX, nikX, jurX);
thn_mulai = thnX;
jabatan_ke = keX;
}
public void viewRektor(){
System.out.println("Tahun Mulai Jabatan:
"+thn_mulai); System.out.println("Jabatan Rektor
ke: "+jabatan_ke);
}

}
20

Program 3.3. Pendefinisian Class Dekan (Gambar 3.5)


package Dosen;
public class Dekan extends Dosen{
private String Fakultas;
public Dekan(String namaX, String nikX, String
jurX, String fakX) {
super(namaX, nikX, jurX);
Fakultas = fakX;
}
public void viewDekan(){
System.out.println("Fakultas : "+Fakultas);
}
}

Program 3.4. Pendefinisian Class Kalab (Gambar 3.6)


package Dosen;
public class Kalab extends Dosen{
private String Laboratorium;
public Kalab(String namaX, String nikX, String jurX,
String labX) {
super(namaX, nikX, jurX);
Laboratorium = labX;
}
public void viewKalab(){
System.out.println("Laboratorium:
"+Laboratorium);
}
}

Program 3.5. Pemanggilan Fungsi (Gambar 3.7)


package Dosen;
public class Main {
public static void main(String[] args){
21

Rektor rek = new


Rektor("Kevin","1714311007","Teknik",2013,1);
Dekan dek = new
Dekan("Aril","171431104","Infor","Teknik");
Kalab kal = new
Kalab("Satrio","1714311028","Teknik","Lab.1 ");
rek.view();
rek.viewRektor();
System.out.println("");
dek.view();
dek.viewDekan();
System.out.println("");
kal.view();
kal.viewKalab();
}
}

Output :

Tugas :
a) Buatlah sebuah class kendaraan dengan turunannya kedaraan darat, kendaraan
laut, kemudian diturunkan lagi menjadi sepeda motor dan perahu layar.

1. Membuat Class baru dengan nama “Kendaraan”


22

package kendaraanku;
public class kendaraan {
protected String Jenis;
kendaraan(String JenisU){
Jenis = JenisU;
}
public void view(){
System.out.println("Kenis Kendaraan: "+Jenis);
}
}

Keterangan :

2. Membuat Class baru dengan nama “Darat”


package kendaraanku;
public class darat extends kendaraan{
private String Nama;
private String Merk;
private String Tipe;
public darat(String JenisU, String NamaU, String MerkU,
String TipeU) {
super(JenisU);
Nama= NamaU;
Merk= MerkU;
Tipe= TipeU;
23

}
public void viewdarat(){
System.out.println("Nama Kendaraan: "+Nama);
System.out.println("Merk Kendaraan: "+Merk);
System.out.println("Tipe Kendaraan: "+Tipe);
}
}

Keterangan :

3. Membuat Class baru dengan nama “Laut”


package kendaraanku;
public class laut extends kendaraan{
private String Nama;
private String Bahan;
private String Warna;
public laut(String JenisU, String NamaU, String BahanU,
String WarnaU) {
super(JenisU);
Nama= NamaU;
Bahan= BahanU;
Warna= WarnaU;
}
24

public void viewlaut(){


System.out.println("Nama Kendaraan: "+Nama);
System.out.println("Bahan Kendaraan: "+Bahan);
System.out.println("Warna Kendaraan: "+Warna);
}
}

Keterangan :

4. Melakukan Pemanggilan di kelas “Main”:


package kendaraanku;
public class Main {
public static void main(String[] args){
darat dar = new darat("Kendaraan Darat","Sepeda
Motor","Honda","Vario");
laut lau = new laut("Kendaraan
Laut","Titanic","Besi","Hitam");
dar.view();
dar.viewdarat();
System.out.println("");
lau.view();
lau.viewlaut();
System.out.println("");
25

}
}

Keterangan :

Output :

b) Buatlah turunan dari kelas mahasiswa yang telah Anda buat pada modul 1
menjadi kelas: Pecinta alam dan buatlah atribut dan metodh-metodhnya
masingmasing
sebanyak 2 buah

1. Mengubah Source Code Kelas “Mahasiswa” menjadi seperti:


package modul3b;
public class mahasiswa {
protected String Nama;
mahasiswa(String NamaU){
26

Nama = NamaU;
}
public void view(){
System.out.println("Pecinta Alam: "+Nama);
}

Keterangan :

2. Membuat Kelas baru bernama “PecintaAlam” dengan Source Code:


package modul3b;
public class PecintaAlam extends mahasiswa{
private String NamaTeam;
private String Waktu;
public PecintaAlam(String NamaU,String NamaTeamU,String
WaktuU) {
super(NamaU);
NamaTeam = NamaTeamU;
Waktu = WaktuU;
}
public void viewPecintaAlam(){
System.out.println("Nama Team: "+NamaTeam);
System.out.println("Waktu: "+Waktu);
}
}
27

Ketersngan :

3. Melakukan Pemanggilan di kelas “Main”:


package modul3b;
public class main {
public static void main(String[] args){
PecintaAlam PA = new PecintaAlam("Pantai","Kim
Jisoo","Jalan-jalan Sebelum Ambyar ");
PA.view();
PA.viewPecintaAlam();
System.out.println("");
}

Keterangan :

Output :
28

c) Buatlah 2 objek untuk menginstantiasi kelas pecinta alam dengan atribut


nama dan nim Anda sendiri dan 1 teman Anda dengan
mengimplementasikan beberapa metodh yang telah Anda definisikan dalam
kelas kelasnya

1. Mengubah Source Code Kelas “Mahasiswa” menjadi seperti:


package modul3c;
public class mahasiswa {
protected String Nama;
protected String Nama_Mahasiswa;
protected String NIM;
mahasiswa(String NamaU,String Nama_MahasiswaU,
String NIMU){
Nama = NamaU;
Nama_Mahasiswa = Nama_MahasiswaU;
NIM = NIMU; }
public void view(){
System.out.println("Pecinta Alam: "+Nama);
System.out.println("Nama Anggota:
"+Nama_Mahasiswa);
System.out.println("NIM: "+NIM);
}

Keterangan :
29

2. Mengubah Source Code Kelas “PecintaAlam” dengan Source Code:


package modul3c;
public class PecintaAlam extends mahasiswa{
private String NamaTeam;
private String Waktu;
public PecintaAlam(String NamaU, String
Nama_MahasiswaU, String NIMU, String NamaTeamU, String
WaktuU) {
super(NamaU, Nama_MahasiswaU, NIMU);
NamaTeam = NamaTeamU;
Waktu = WaktuU;
}
public void viewPecintaAlam(){
System.out.println("Nama Pengajar: "+NamaTeam);
System.out.println("Waktu Pelaksanaan: "+Waktu);
}
}

Keterangan :

4. Melakukan Pemanggilan di kelas “Main”:


30

package modul3c;
public class main {
public static void main(String[] args){
PecintaAlam PA = new PecintaAlam("Pulau","Kevin","1714311007","Lalisa
Manoban","Sebelum hari ambyar dimulai ");
PecintaAlam PA2 = new
PecintaAlam("Pantai","Fareal","1714311012","Gundam","Sebelum hari modar
dimulai ");
PA.view();
PA.viewPecintaAlam();
System.out.println("");
PA2.view();
PA2.viewPecintaAlam();
System.out.println("");
}

Keterangan :

Output :
31

MODUL 4
32

POLIYMORFISME

Latihan :

Gambar 4.1. Pendefinisian Class Kendaraan:


public class Kendaraan {
private String Model;
Kendaraan(String ModelX){
Model = ModelX;
}
public void view(){
System.out.println("Jenis Kendaraan: "+Model);
}
public void informasi(){}
}

public class Pesawat extends Kendaraan{


private String Nama;
private String Jenis;
public Pesawat(String Nama) {
super("Pesawat");
this.Nama = Nama;
}
public Pesawat(String Nama, String Jenis){
super("Pesawat");
this.Nama = Nama;
this.Jenis = Jenis;
}
public void informasi(){
System.out.println("Nama Pesawat adalah "+Nama);
System.out.println("Jenis Pesawat adalah "+Jenis);
}
}

Gambar 4.2. Pendefinisian Class Mobil:


public class mobil extends Kendaraan{
private String Nama;
private String Jenis;
33

public mobil(String Nama) {


super("Mobil");
this.Nama = Nama;
Jenis = "Belum Teridentifikasi";
}
public mobil(String Nama,String Jenis){
super("Mobil");
this.Nama = Nama;
this.Jenis = Jenis;
}
public void informasi(){
System.out.println("Nama Mobil adalah"+Nama);
System.out.println("Jenis Mobil adalah"+Jenis);
}
}

Gambar 4.3. Pendefinisian Class Kapal:


public class kapal extends Kendaraan{
private String Nama;
private String Jenis;
public kapal(String Nama) {
super("Kapal");
this.Nama= Nama;
Jenis = "Belum Teridentifikasi";
}
public kapal(String Nama, String Jenis){
super("Kapal");
this.Nama = Nama;
this.Jenis = Jenis;
}
public void informasi(){
System.out.println("Nama Kapal adalah"+ Nama);
System.out.println("Jenis Kapal adalah"+ Jenis);
}
}

Gambar 4.4. Pemanggilan Ketiga Class:


34

public class main {


public static void main(String[] args){
Kendaraan P;
pesawat psw = new pesawat("Boeing 707","Pesawat
Komersial");
mobil mbl1 = new mobil("Toyota Kijang","Jeep");
mobil mbl2 = new mobil("SuzukiBaleno","Sedan");
mobil mbl3 = new mobil("VW Combi");
kapal kpl = new kapal("Queen Mary 2","Kapal
Pesiar");
P = psw;
P.informasi();
System.out.println("");
P = mbl1;
P.informasi();
System.out.println("");
P = mbl2;
P.informasi();
System.out.println("");
P = mbl3;
P.informasi();
System.out.println("");
P = kpl;
P.informasi();
}
}

Output :

Tugas :
a) Buatlah semua program yang mengimplemtasikan konsep polymorphisme dari
35

sebuah class dengan nama class hewan

1. Membuat Class baru dengan nama “Hewan” dengan source Code


berikut:
package modul4a;
public class Hewan {
private String Model;
Hewan (String ModelU){
Model = ModelU;
}
public void view(){
System.out.println("Jenis Hewan: "+Model);
}
public void informasi(){}

Keterangan :

2. Membuat Class baru dengan nama “Bertelur” dengan source Code berikut:
package modul4a;
public class bertelur extends Hewan {
private String Nama;
private String Jenis;
public bertelur(String Nama) {
super("Bertelur");
this.Nama = Nama;
}
public bertelur(String Nama, String Jenis){
36

super("Bertelur");
this.Nama = Nama;
this.Jenis = Jenis;
}

public void informasi(){


System.out.println("Nama Hewan :"+Nama);
System.out.println("Jenis Hewan tersebut adalah
"+Jenis);}
}

Keterangan :

3. Membuat Class baru dengan nama “Menyusui” dengan source Code berikut
package modul4a;
public class menyusui extends Hewan{
private String Nama;
private String Jenis;
public menyusui(String Nama) {
super("Menyusui");
this.Nama = Nama;
}
public menyusui(String Nama, String Jenis){
super("Menyusui");
this.Nama = Nama;
this.Jenis = Jenis;
}
37

public void informasi(){


System.out.println("Nama Hewan :"+Nama);
System.out.println("Jenis Hewan tersebut
adalah "+Jenis);}
}

Keterangan :

4. Membuat Class baru dengan nama “Main” dengan source Code berikut
package modul4a;
public class main {
public static void main(String[] args){
Hewan P;
menyusui sui = new
menyusui("Kelinci","Anggora");
bertelur telur = new bertelur("Ayam", "Jago");

P = sui;
P.informasi();
System.out.println("");
P = telur;
P.informasi();
System.out.println("");
}

}
38

Keterangan :

Output :

b) Buatlah kelas Rohis yang merupakan kelas turunan dari mahasiswa dan buatlah
metodh- metodhnya. Buatlah 1 objek untuk menginstantiasi kelas rohis dan
mengimplementasikan beberapa metodh yang telah Anda definisikan dalam kelas
rohis. Panggil lah objek yang telah Anda buat pada kelas pecinta alam dan rohis
untuk bekerja sehingga tampil efek-efek polymorfisme.
1. Membuat Class Rohis (turunan dari Mahasiswa) :
package modul4b;
public class Rohis extends mahasiswa{
private String waktu;
private String tempat;
mahasiswa M;
mahasiswa mhs = new mahasiswa("TEKNIK","Yuan
Shierly Alvionita","Informatika");
mahasiswa mhs2 = new mahasiswa("TEKNIK","Kevin
Leonardo S","Informatika");
public Rohis(String JurusanU, String
Nama_MahasiswaU, String ProdiU, String WaktuU,
String TempatU) {
super(JurusanU, Nama_MahasiswaU, ProdiU);
39

waktu = WaktuU;
tempat = TempatU;
}
public void informasiRohis(){
M=mhs;
M.view();
System.out.println("Masuk Jika :"+waktu);
System.out.println("Tempat Bernaung Di: "+tempat);
}
}

Keterangan :

2.Mengubah Class Pecinta Alam :


package modul4b;
public class PecintaAlam extends mahasiswa{
private String Waktu;
private String Tempat;
mahasiswa M;
mahasiswa mhs = new mahasiswa("Ubhara","Kevin Leonardo
S","1714311007");
public PecintaAlam(String JurusanU, String
Nama_MahasiswaU, String ProdiU, String WaktuU, String
TempatU) {
super(JurusanU, Nama_MahasiswaU, ProdiU);
40

Waktu = WaktuU;
Tempat = TempatU;
}
public void informasiPA(){
M=mhs;
M.view();
System.out.println("Masuk Jika: "+Waktu);
System.out.println("Tempat Bernaung Di: "+Tempat);
}

Keterangan :

3. Membuat Class Main_SoalB:


package modul4b;
public class main {
public static void main(String[] args){
Rohis P;
PecintaAlam S;
Rohis rhs = new Rohis("TEKNIK","Yuan Shierly
Alvionita","Informatika","Gabut Dikos","Lab");
41

PecintaAlam PA = new PecintaAlam("TEKNIK","Kevin


Leonardo S","Informatika","Mager Dirumah
Dong","Kampus");
P = rhs;
P.informasiRohis();
System.out.println("");
S = PA;
S.informasiPA();
System.out.println("");
}
}

Keterangan :

Output :

MODUL 5
PENGKAPSULAN

Latihan :
42

1. Buatlah kelas “Manusia”


package Manusia;
public class Manusia {
public String nama;
public Manusia(String n)
{
this.nama = n;
}
public String tampilkanNama()
{
return nama;
}
public void makan()
{
System.out.println("Nyam... nyam... nyam...");
}
public void kerja()
{
System.out.println("Kerja... kerjaaa...");
}
private void bunuhDiri()
{
System.out.println("Dor…bruk...");
}
}

2. Buatlah kelas “Andi”


package Manusia;
public class Andi {
public static void main(String arg[])
{
Manusia andi= new Manusia("Andi");
System.out.println("Nama= "+ andi.tampilkanNama());
andi.makan();
}
}

Soal :

1) Kompile dan jalankan kelas manusia dan andi!


43

2 Ubah hak akses makan dari public menjadi protected dan ulangi
praktikum nomor 1! Apa yang terjadi? Jelaskan!

Gambar sebelum diubah :

Gambar setelah diubah :

Output:

Keterangan :

3 Tambahkan pada kelas andi untuk memanggil metodh bunuh diri, ulangi
praktikum no 1. Apa yang terjadi? Jelaskan!
44

Keterangan :

MODUL 6
INTERFACE

Latihan :
45

Contoh pewarisan ganda yang tidak benar dalam java


package modul6;
interface programmer {
void memrogram();}
interface tentara {
void menembak();}
interface burung {
void terbang();
void buangKotoran();
}
class superman implements programmer,tentara,burung
{
public void memrogram(){};
public void menembak(){};
public void terbang(){};
public void
buangKotoran(){};
}

Kemudian kelas superman diinstantiasi menjadi objek bernama bejo, contoh


kode program javanya sebagai berikut :
package modul6;
public class bejo {
public static void main(String arg[])
{
superman bj= new superman();
bj.memrogram();
{
System.out.println("Implementasi memrogram
...tak..tik");
}
bj.menembak();
{
System.out.println("Implementasi menembak
...dor..dor");
}
bj.terbang();
{
System.out.println("Implementasi
terbang......Zap....");
46

}
}
}

Tugas :
Buatlah kelas mahasiswaSuper dengan menggunakan interface
mahasiswa, atlit, wiraswasta, dan kemudian instantiasi menjadi objek dengan
nama
sesuai nama Anda

1. Buatlah kelas “mahasiswasuper”


package modu6;

interface mahasiswa {void siswa (); }


interface atlit { void raga () ;}
interface wiraswasta { void dagang () ;}

public class mahasiswasuper implements


mahasiswa, atlit, wiraswasta {
public void siswa (){

};
public void raga (){

};
public void dagang (){

};

Keterangan :

2. Buat kelas “nama sendiri”


47

package modu6;
public class kevin {
public static void main(String arg[]){
mahasiswasuper kevin = new
mahasiswasuper();

kevin.siswa(); {
System.out.println("Mahasiswa sedang
nugas");

}
kevin.raga(); {
System.out.println("Atlit sedang latihan");

}
kevin.dagang(); {
System.out.println("Sedang nerdagang");

}
}
}

Keterangan :

Output :
48

MODUL 7
49

PEMAKETAN

Latihan :
kita akan membuat 2 paket: paket programmer dan paket
tentara. Paket programmer terdiri dari kelas programmer C dan programmer
Java.

Disimpandalam
“programmer/programmerC.java”
package programming;
public class ProgrammingC {

public ProgrammingC() { }
public void kerja() {
System.out.println("Implementasi metodh
kerja Programmer C ..");
}

public void bersantai() {


System.out.println("Implementasi metodh
bersantai Programmer .. ");
}

Disimpan dalam file “programmer/programmerJava.java”


package programming;
public class ProgrammingJava {

public ProgrammingJava() { }

public void kerja() {


System.out.println("Implementasi metodh kerja
Programmer Java ..");
}

public void bersantai() {


System.out.println("Implementasi metodh
bersantai Programmer Java.. ");
}
}
50

Disimpan dalam file “tentara/kopasus.java”


package tentara;
public class Kopassus {
public Kopassus() {
}

public void kerja() {


System.out.println("Implementasi metodh kerja kopasus ....");
}

public void bersantai() {


System.out.println("Implementasi metodh bersantai kopasus");
}
}

Disimpan dalam file “tentara/marinir.java”


package tentara;
public class Marinir {
public Marinir() {
}

public void kerja() {


System.out.println("Implementasi metodh kerja marinir ..");
}

public void bersantai() {


System.out.println("Implementasi metodh bersantai marinir ..");
}
}

Disimpan dalam file "ahmed.java"


package instansiasi;
import programming.ProgrammingC;
class ahmed {
public static void main(String arg[]) {
ProgrammingC ahmed= new ProgrammingC();
System.out.println("Praktikum : Kevin /
1714311007");
System.out.println(" ");
ahmed.kerja();
}
51

Output :

Tugas :
1. Buatlah paket mahasiswa yang isinya kelas IF, kelas MI, kelas SI dan
buat metodh- metodhnya
2. Buatlah paket orangTua Siswa yang isinya kelas petani, nelayan,
wiraswasta atau yang
3. lainnya dan buat metodhnya.
4. Instantiasi sebuah objek dan beri nama dengan nama Anda yang mengimport
dari paket mahasiswa
5. Instantiasi sebuah objek dan beri nama dengan nama Orang tua Anda yang
mengimport dari paket orangTuaSiswa

Jawab :

a.Kelas IF
package mahasiswa;
public class IF {
String nama, nim, fakultas;
public IF(String Nama, String NIM, String
Fakultas ){
nama=Nama;
nim=NIM;
fakultas =Fakultas;
}
public void cetak(){
System.out.println("Mahasiswa : ");
System.out.println("Nama : "+nama);
System.out.println("NIM : "+nim);
System.out.println("Fakultas : "+fakultas);

}
}

Keterangan :
52

b. kelas MI
package mahasiswa;
public class MI {
String nama, nim, fakultas;
public MI(String Nama, String NIM, String
Fakultas ){
nama=Nama;
nim=NIM;
fakultas =Fakultas;
}
public void cetak(){
System.out.println("Mahasiswa : ");
System.out.println("Nama : "+nama);
System.out.println("NIM : "+nim);
System.out.println("Fakultas : "+fakultas);

}
}

Keterangan :

c. kelas SI
package mahasiswa;
public class SI {
String nama, nim, fakultas;
public SI(String Nama, String NIM, String
Fakultas ){
nama=Nama;
53

nim=NIM;
fakultas =Fakultas;
}
public void cetak(){
System.out.println("Mahasiswa : ");
System.out.println("Nama : "+nama);
System.out.println("NIM : "+nim);
System.out.println("Fakultas : "+fakultas);

}
}

Keterangan :

d.kelas petani
package orangtua;
public class Petani {
public String nama;
public String pekerjaan;
public Petani(String Nama){
nama=Nama;
pekerjaan="Petani";
}
public void cetak(){
System.out.println("Orang Tua : ");
System.out.println("Nama : "+nama);
System.out.println("Pekerjaan :
"+pekerjaan);
}
}

Keterangan :
54

e. kelas nelayan
package orangtua;
public class Nelayan {
public String nama;
public String pekerjaan;
public Nelayan(String Nama){
nama=Nama;
pekerjaan="Nelayan";
}
public void cetak(){
System.out.println("Orang Tua : ");
System.out.println("Nama : "+nama);
System.out.println("Pekerjaan :
"+pekerjaan);
}
}

Keterangan :

f. kelas wiraswasta
package orangtua;
public class Wiraswasta {
public String nama;
public String pekerjaan;
public Wiraswasta(String Nama){
nama=Nama;
pekerjaan="Wiraswasta";
}
55

public void cetak(){


System.out.println("Orang Tua : ");
System.out.println("Nama : "+nama);
System.out.println("Pekerjaan :
"+pekerjaan);
}
}

Keterangan :

g. kelas instansiasi
package instansiasi;
import mahasiswa.IF;
import mahasiswa.SI;
import mahasiswa.MI;
import orangtua.Nelayan;
import orangtua.Petani;
import orangtua.Wiraswasta;
public class instansiasi {
public static void main(String[] args){
IF mahasiswa = new IF("Kevin",
"1714311007","Teknik");
SI mahasiswa2 = new SI("Aril",
"1714311004","Teknik");
Nelayan OrangTua = new Nelayan("Bahi");
Petani OrangTua2 = new Petani("Ajeng");

mahasiswa.cetak();
System.out.println(" ");
OrangTua.cetak();
System.out.println(" ");
mahasiswa2.cetak();
System.out.println(" ");
OrangTua2.cetak();
}
}
56

Keterangan :

Output :

Anda mungkin juga menyukai