Disusun
Oleh
SUKARNI MAJID
121055520120002
FAKULTAS TEKNIK
TERNATE
2024
JAWABAN
// deklarasi variabel
String nama, grade;
int n1, n2, n3;
double m1, m2, m3, mm;
m1 = n1 * 0.25;
m2 = n2 * 0.35;
m3 = n3 * 0.40;
mm = m1 + m2 + m3;
System.out.println("============================");
System.out.println("Nilai Murni yang diperoleh");
System.out.println("Nilai murni Tugas: " + (int) m1);
System.out.println("Nilai murni UTS: " + (int) m2);
System.out.println("Nilai murni UAS: " + (int) m3);
System.out.println("Nilai Akhir yang diperoleh yaitu: " + (int) mm);
System.out.println();
}
}
}
Output
2. PROGRAM UNTUK INHERITANCE, ENCAPSULATION, DAN POLYMORPHISM
a. Inheritance (Pewarisan)
Source Code
// Kelas utama sebagai superclass
class Reptil {
private String nama;
private String jenis;
Outputnya
Penjelasannya
Penjelasan Output:
1. Kelas Reptil:
- Memiliki atribut dan metode umum untuk semua reptil, seperti
berkembangBiak, makanan, dan displayInfo.
2. Kelas Ular dan Penyu (Subclass):
- Merupakan subclass dari kelas Reptil.
- Mewarisi sifat dan metode dari kelas Reptil.
- Masing-masing kelas memiliki metode khusus: hidupDiDarat untuk Ular dan
hidupDiLaut untuk Penyu.
3. Program Utama PewarisanReptil:
- Membuat objek dari kelas Ular dan Penyu.
- Memanggil metode-metode umum dan khusus untuk masing-masing objek
untuk mengilustrasikan pewarisan dan karakteristik khusus.
b. Encapsulation
Source Code
1. File Lampu.java
2. File main.java
Outputnya
Penjelasannya
Penjelasan Output:
1. Lampu memiliki dua atribut private: warna (String) dan menyala (boolean).
2. Konstruktor digunakan untuk menginisialisasi objek Lampu dengan nilai awal
warna dan status menyala.
3. Setter (setWarna dan setMenyala) digunakan untuk mengubah nilai atribut, dan
getter (getWarna dan isMenyala) digunakan untuk mengakses nilai atribut.
4. Terdapat dua metode tambahan, yaitu nyalakan dan matikan untuk mengganti
status menyala lampu.
c. Polymorphism
Source Codenya
// Bentuk.java
public interface Bentuk {
void tampilkan();
}
// Kendaraan.java
public interface Kendaraan {
void start();
}
//Mobil.java
public class Mobil implements Kendaraan, Bentuk {
@Override
public void start() {
System.out.println("Mobil dinyalakan.");
}
@Override
public void tampilkan() {
System.out.println("Bentuk: Mobil");
}
// Motor.java
public class Motor implements Kendaraan, Bentuk {
@Override
public void start() {
System.out.println("Motor dinyalakan.");
}
@Override
public void tampilkan() {
System.out.println("Bentuk: Motor");
}
Outputnya
Penjelasannya
Penjelasan Output:
1. Objek mobil diinisialisasi sebagai new Mobil(), dan ketika kita memanggil
metode start(), itu memanggil implementasi dari Kendaraan yang ada di kelas
Mobil.
2. Karena Mobil mengimplementasikan Bentuk, kita dapat mengakses metode
tampilkan() melalui casting (Bentuk) mobil.
3. Objek motor diinisialisasi sebagai new Motor(), dan ketika kita memanggil
metode start(), itu memanggil implementasi dari Kendaraan yang ada di kelas
Motor.
4. Karena Motor juga mengimplementasikan Bentuk, kita dapat mengakses metode
tampilkan() melalui casting (Bentuk) motor.
5. untuk objek motor, kita memanggil metode bunyiKnalpot() yang ada di kelas
Motor.
6. Berlaku juga di mobil, kita memanggil metode bunyiKnalpot() yang ada di kelas
Mobil.