Tugas Minggu Ke 9 PBO Siti Halisah 0857201000464
OVERLOADING,OVERRIDING DAN EXCEPTION Overloading ialah suatu kemampuan yang menggunakan satu nama method untuk beberapa method yang memiliki parameter masukan yang berbeda yang memodifikasi secara horizontal method maupun konstruktor milik kelas super maupun kelas yang sama. Overriding ialah suatu kemampuan yang mengubah implementasi suatu method yang dimiliki kelas super ketika diturunkan yang memodifikasi secara vertikal method milik kelas super. Exception ialah suatu objek error khusus yang dibuat ketika terjadi kesalahan pada suatu program.
Kategori error dalam program : 1.Syntax error : terjadi jika java compiler menemukan kesalahan pada syntax atau aturan-aturan pada program 2.Runtime error : terjadi karena faktor eksternal 3.Logic error : terjadi karena kesalahan logika pemrograman.
Contoh program : 1. class SegiTiga { public SegiTiga(double panjang) { System.out.println("\nVariabel = segitiganya sama sisi"); System.out.println("panjang = " +panjang); keliling (panjang); } public SegiTiga(double panjang, double sisiMiring) { System.out.println("\n2Variabel = segitiganya sama kaki"); System.out.println("panjang = " +panjang+ " sisi miring = " +sisiMiring); keliling(panjang, sisiMiring); public void keliling(double panjang) { tampilkanhasil(panjang*3); public void keliling(double p, double sM) { tampilkanhasil(2*sM+p); protected void tampilkanhasil(double h) { System.out.println("Hasil=" +h); } nb : segitiga1,segitiga2,keliling1,keliling2,tampilkanhasil merupakan method sM+p merupakan parameter class ini tidak mempunyai input karena tidak ada fungsi utamanya
2. class MainSegiTiga { public static void main(String [] args) { new SegiTiga(7); new SegiTiga(4,7); } nb : mainsegitiga merupakan class utama karena ada void main new segitiga(7) ; merupakan konstruktor yang parameternya 1 new segitiga(4,7) ; memanggil konstruktor yang parameternya 2 class ini tidak mempunyai objek tapi langsung memanggil konstruktor output : variabel = segitiganya sama sisi panjang = 7.0 hasil = 21.0 2variabel = segitiganya sama kaki panjang = 4.0 sisi miring = 7.0 hasil = 18.0
3. class OverRiding { public void MethodAsli() { System. out 3. class OverRiding { public void MethodAsli() { System.out.println("Method milik class OverRiding dijalankan"); } public static void main(String [] args) { OverRiding O =new OverRiding(); O.MethodAsli(); } output : method milik class OverRiding dijalankan
4. class SubOverRiding extends OverRiding { public void MethodAsli() { System.out.println("Method yang sudah OverRiding dijalankan"); } public void MethodAsliSuper() { System.out.println("Method pemanggil MethodAsli dijalankan"); super.MethodAsli(); public static void main(String [] args) { SubOverRiding SO = new SubOverRiding(); SO.MethodAsli(); SO.MethodAsliSuper(); } nb : suboverriding merupakan turunan dari class overriding new suboverriding (); memanggil konstruktor suboverriding output : method yang sudah overriding dijalankan method pemanggil method asli dijalankan method milik class overriding dijalankan
5. class TanpaException { public static void main(String [] args) { int Nilai = Integer.parseInt(args[0]); System.out.println("Nilai yang dimasukkan : " +Nilai); } } 6. class CobaException { int Nilai = 0; try { int nilai = Integer.parseInt (args[0]); System.out.println("Nilai yang dimasukkan : " +Nilai); } catch(Exception e) { System.out.println("Pasti yang diinput bukan Integer"); finally { System.out.println("Blok finally tetap dilakukan"); output : pasti yang di input bukan integer blok finally tetap dilakukan
7. class PembagianNol { public static void main(String [] args) { System.out.println("Sebelum pembagian"); try { System.out.println(5/0); } catch(Throwable T) { System.out.println("Terjadi pembagian nol"); System.out.println("Sesudah pembagian"); } } output : sebelum pembagian terjadi pembagian nol sesudah pembagian 8. import java.io.*; class TesInputData { BufferedReader BR = new BufferedReader(new InputStreamReader(System.in)); String Input = " "; System.out.println("Masukkan data : "); Input = "Salah"; finally { System.out.println("Data yang anda masukkan adalah " +Input); output : masukkan data : data yang anda masukkan adalah salah