Lab Activity 5. Polymorphism
public class
Dog { private String nama; public Dog(String nama) { this.nama = nama; } public boolean equals(Object objectLain) { if (this == objectLain) { return true; } if (objectLain == null || getClass() !=
objectLain.getClass()) { return false; } Dog dogLain = (Dog) objectLain; return nama.equals(dogLain.nama); } public static void main(String[] args) { Dog d1 = new Dog("Rufus"); Dog d2 = new Dog("Sally"); Dog d3 = new Dog("Rufus"); Dog d4 = d3; System.out.println(d1.equals(d2)); System.out.println(d2.equals(d3)); System.out.println(d1.equals(d3));
System.out.println(d3.equals(d4));
} } |
public class
RekeningBank { private
String nomorRekening; private
double saldo; public
RekeningBank(String nomorRekening, double saldo) { this.nomorRekening = nomorRekening; this.saldo = saldo; } public String
getNomorRekening() { return nomorRekening; } public double
getSaldo() { return saldo; } public String
toString() { return nomorRekening + ", " +
saldo; } public
boolean equals(Object obj) { if (obj instanceof RekeningBank) { RekeningBank rekening =
(RekeningBank) obj; if
(nomorRekening.equals(rekening.getNomorRekening()) && saldo ==
rekening.getSaldo()) { return true; } } return false; } public static
void main(String[] args) { RekeningBank rek1 = new
RekeningBank("102345", 1500000); RekeningBank rek2 = new
RekeningBank("234567", 1500000); RekeningBank rek3 = new
RekeningBank("102345", 1500000); System.out.println(rek1); System.out.println(rek1.equals(rek2)); System.out.println(rek1.equals(rek3)); } } |
public class
UjiBangun { public static void main(String[] args) { // Buat array empat elemen bertipe
Bangun. Bangun[] obj = new Bangun[4]; // Isi array dengan object-object
berupa subclass dari Bangun. obj[0] = new PersegiPanjang(7.5,
5.0); obj[1] = new Lingkaran(4.5); obj[2] = new BujurSangkar(12.5); obj[3] = new SegitigaSiku(10.0, 7.5); // Cetak Daftar Bangun System.out.println("Daftar
Bangun:"); // Loop untuk mencetak informasi
setiap object for ( int i = 0; i
< obj.length; i++ ) { System.out.println(); // Cetak Judul nomor bangun. System.out.println("Bangun
" + (i + 1) + ": "); // Cetak luas bangun System.out.println( "Luas =
" + obj[i].getLuas() ); System.out.print("Jenis:
"); // Statement if untuk menguji
class dari setiap object // dan menampilkan informasi
setiap object. // Case 1: Jika object adalah
dari class PersegiPanjang if ( obj[i]
instanceof PersegiPanjang ) { // Cetak Persegi Panjang
System.out.println("Persegi Panjang"); // Casting ke tipe
PersegiPanjang PersegiPanjang p = (PersegiPanjang)
obj[i]; // Cetak panjang dan lebar System.out.println( "panjang
= " + p.getPanjang() + ", lebar= " + p.getLebar() ); } // Case 2: Jika object adalah
dari class BujurSangkar else if ( obj[i] instanceof BujurSangkar ) { // Cetak Bujur Sangkar
System.out.println("Bujur Sangkar"); // Casting ke tipe
BujurSangkar BujurSangkar b = (BujurSangkar)
obj[i]; // Cetak sisi System.out.println( "sisi =
" + b.getPanjang() ); } // Case 3: Jika object adalah
dari class Lingkaran else if ( obj[i]
instanceof Lingkaran ) { // Cetak Lingkaran
System.out.println("Lingkaran"); // Casting ke tipe Lingkaran Lingkaran l = (Lingkaran)
obj[i]; // Cetak radius System.out.println( "radius =
" + l.getRadius() ); } // Case 4: Jika object adalah
dari class SegitigaSiku else if ( obj[i]
instanceof SegitigaSiku ) { // Cetak Segitiga Siku
System.out.println("Segitiga Siku"); // Casting ke tipe
SegitigaSiku SegitigaSiku s = (SegitigaSiku)
obj[i]; // Cetak alas dan tinggi System.out.println( "alas =
" + s.getAlas() + ", tinggi = " + s.getTinggi() ); } } }
} |
public class
InterfacePolymorphism { public static void main(String[] args) { BarangRitel[] produk = new
BarangRitel[4]; produk[0] = new CompactDisc("07
Des", "Sheila on 7", 50000); produk[1] = new CompactDisc("Let It
Be", "Beatles", 75000); produk[2] = new DVD("Avengers:
Endgame", 181, 200000); produk[3] = new DVD("The Raid",
101, 185000); // Loop untuk mencetak informasi setiap
object for ( BarangRitel p
: produk ) { // Cetak Nama Produk System.out.print( "Nama:
" + p.getNamaProduk() ); // Cetak Harga Ritel System.out.printf( ",
Harga: Rp%,.2f\n", p.getHargaRitel() ); }
} |
Comments
Post a Comment