Professional Documents
Culture Documents
Dosen Pengampu :
Benedika Ferdian Hutabarat, S.Komp., M.Kom.
Disusun Oleh :
Tisa Ameiliawati
F1E122045
R003
SINTAKS
package ch13;
class GeometricObject {
private String color = "white";
private boolean filled;
private java.util.Date dateCreated;
public GeometricObject() {
dateCreated = new java.util.Date();
}
public GeometricObject(String color, boolean filled) {
dateCreated = new java.util.Date();
this.color = color;
this.filled = filled;
}
public Circle() {
}
public Rectangle() {
}
Program Java di atas memanfaatkan konsep dasar pemrograman berorientasi objek (OOP)
untuk mengimplementasikan kelas-kelas geometris yang terkait, yaitu `GeometricObject`, `Circle`,
dan `Rectangle`. Kelas `GeometricObject` berfungsi sebagai kelas dasar yang memiliki properti
seperti warna (`color`), keadaan terisi atau tidak terisi (`filled`), dan tanggal penciptaan
(`dateCreated`). Selain itu, kelas ini menyediakan metode getter dan setter untuk propertinya, serta
metode `toString` untuk menghasilkan representasi string objek.
Kelas `Circle` dan `Rectangle` merupakan turunan dari `GeometricObject`, yang
menunjukkan konsep pewarisan dalam OOP. Kelas `Circle` menambahkan properti radius (`radius`)
dan menyediakan metode untuk menghitung area, diameter, dan keliling lingkaran. Sementara itu,
`Rectangle` menambahkan properti lebar (`width`) dan tinggi (`height`), dan menyediakan metode
untuk menghitung area dan keliling persegi panjang.
Penting untuk dicatat bahwa program ini menerapkan polimorfisme melalui metode
`sumArea`. Metode ini mengambil array dari objek `GeometricObject`, dan menggunakan
polimorfisme untuk mengakses metode `getArea` dari objek, tanpa memperhatikan tipe sebenarnya
(Circle atau Rectangle). Ini menunjukkan fleksibilitas OOP dalam memproses objek dengan tipe yang
berbeda secara bersamaan.
Selain itu, dalam `main` method, objek-objek geometris dibuat dengan menggunakan nilai
acak untuk propertinya. Setelah itu, metode `sumArea` dipanggil untuk menghitung dan mencetak
total luas dari objek-objek tersebut. Keseluruhan, program ini memberikan contoh nyata penggunaan
konsep-konsep dasar OOP untuk memodelkan objek-objek geometris dengan sifat-sifat khusus
masing-masing, seperti radius untuk lingkaran dan lebar serta tinggi untuk persegi panjang.
OUTPUT