SKA#4 OOP Class sederhana | Java
- SKA#0 Pengantar
- SKA#1 Dasar | Java
- SKA#1 Dasar | Python
- SKA#2 Method | Java
- SKA#2 Function | Python
- SKA#3 Array | Java
- SKA#3 List | Python
- SKA#4 OOP Class sederhana | Java
- SKA#4 OOP Class sederhana | Python
- SKA#5 OOP Constructor | Java
- SKA#5 OOP Instance Method | Python
- SKA#6 OOP Instance Method | Java
Contoh kasus A artikel ke-4 untuk bahasa pemrograman Java
Pada artikel ke-4 Studi Kasus A, kode akan dimodifikasi dengan menyertakan class khusus yang digunakan untuk menampung nilai mata kuliah. Sebelum mempelajari artikel ini, sebaiknya anda membaca dahulu materi mengenai class dan object.
Jika pada artikel ke-3 dicontohkan bahwa nama mahasiswa dan komponen nilainya disimpan pada dua array terpisah, maka kali ini kita akan menyimpan nama mahasiswa dan komponen nilai mata kuliah yang ia dapatkan pada sebuah object. Object ini dibuat dari class NilaiMataKuliah yang strukturnya merepresentasikan komponen nilai seorang mahasiswa.
Berikut adalah kode untuk class NilaiMataKuliah pada file NilaiMataKuliah.java
public class NilaiMataKuliah { String nama; String namaMatKul; double nilaiHadir; double nilaiTugas; double nilaiUTS; double nilaiUAS; }
Perhatikan bahwa class NilaiMataKuliah memiliki enam fields, mulai dari nama mahasiswa, nama mata kuliah, hingga seluruh komponen penilaian.
Cara penggunaan class tersebut dalam sebuah kode kemudian dapat dilihat pada susunan kode berikut ini.
catatan: pada tahap ini kita belum membahas class method sehingga kalkulasi nilai masih dilakukan di luar class
public class HitungGrade { public static void main(String[] args) { NilaiMataKuliah obj; obj = new NilaiMataKuliah(); obj.nama = "Agus"; obj.namaMatKul = "Pemrograman Lanjut"; obj.nilaiHadir = 80; obj.nilaiTugas = 75; obj.nilaiUTS = 83; obj.nilaiUAS = 70; double nilaiAkhir = hitungNilaiAkhir(obj.nilaiHadir, obj.nilaiTugas, obj.nilaiUTS, obj.nilaiUAS); String gradeAgus = nilaiKeGrade(nilaiAkhir); String teks = obj.nama +" pada mata kuliah "+ obj.namaMatKul +" memperoleh nilai akhir: "+nilaiAkhir+ ", dengan grade:"+ gradeAgus; System.out.println(teks); } static double hitungNilaiAkhir(double nilaiHadir, double nilaiTugas, double nilaiUTS, double nilaiUAS) { double bobotHadir = 0.15; double bobotTugas = 0.25; double bobotUTS = 0.30; double bobotUAS = 0.30; double nilaiAkhir = bobotHadir * nilaiHadir + bobotTugas * nilaiTugas + bobotUTS * nilaiUTS + bobotUAS * nilaiUAS; return nilaiAkhir; } static String nilaiKeGrade(double nilaiAkhir) { String grade; if (nilaiAkhir >= 85) { grade = "A"; } else if (nilaiAkhir >= 70) { grade = "B"; } else if (nilaiAkhir >= 50) { grade = "C"; } else if (nilaiAkhir >= 40) { grade = "D"; } else { grade = "E"; } return grade; } }