Postingan lainnya
Buku Ini Koding!
Baru!
Buku ini akan jadi teman perjalanan kamu belajar sampai dapat kerjaan di dunia programming!
Error java pointer null
saya ingin mencetak array dari fungsi, dan menampilkan hasil errorException in thread "main" java.lang.NullPointerException
kodenya seperti ini
package tugas.oop.hewan1;
import tugas.oop.hewan1.Unggas;
import tugas.oop.hewan1.Reptil;
import tugas.oop.hewan1.Mamalia;
import tugas.oop.hewan1.Bebek;
import tugas.oop.hewan1.Ayam;
import tugas.oop.hewan.Hewan;
import tugas.oop.hewan1.Anjing;
import tugas.oop.hewan1.Kucing;
import tugas.oop.hewan1.Biawak;
import tugas.oop.hewan1.Ular;
public class MainApp {
public static void main(String[] args) {
Hewan[] kumpulanHewan = new Hewan[600];
Unggas[] kumpulanUnggas = new Unggas[200];
Mamalia[] kumpulanMamalia = new Mamalia[200];
Reptil[] kumpulanReptil = new Reptil[200];
for (int i = 0; i < kumpulanHewan.length; i++) {
if(i < 100) {
Mamalia anjing = new Anjing("Bleki " + (i+1));
kumpulanMamalia[i] = anjing;
} else if (i >= 100 && i<200) {
Mamalia kucing = new Kucing("Kepo " + ((i+1)-100));
kumpulanMamalia[i] = kucing;
} else if (i >= 200 && i<300) {
Unggas ayam = new Ayam("Bangkok " + ((i+1)-200));
kumpulanUnggas[i-200] = ayam;
} else if (i >= 300 && i<400) {
Unggas bebek = new Bebek("Gober " + ((i+1)-300));
kumpulanUnggas[i-300] = bebek;
} else if (i >= 400 && i<500) {
Reptil biawak = new Biawak("Varanus " + ((i+1)-400));
kumpulanReptil[i-400] = biawak;
} else {
Reptil ular = new Ular("Kobra " + ((i+1)-500));
kumpulanReptil[i-500] = ular;
}
}
printHewan(kumpulanMamalia);
printHewan(kumpulanReptil);
printHewan(kumpulanUnggas);
}
//Overloading -> nama functionnya boleh sama, tapi parameternya beda
private static void printHewan(Mamalia[] kumpulanMamalia) {
for(int i = 0; i < kumpulanMamalia.length; i++) {
printHewan(kumpulanMamalia[i]);
}
}
private static void printHewan(Mamalia kumpulanMamalia) {
System.out.println("============");
System.out.print(String.format("%s bersuara ", kumpulanMamalia.nama));
kumpulanMamalia.bersuara();
System.out.println(String.format("berjalan dengan %s",kumpulanMamalia.alatBerjalan));
System.out.print(String.format("%s berordo ", kumpulanMamalia.nama));
kumpulanMamalia.ordo();
}
//Overloading -> nama functionnya boleh sama, tapi parameternya beda
private static void printHewan(Reptil[] kumpulanReptil) {
for(int i = 0; i < kumpulanReptil.length; i++) {
printHewan(kumpulanReptil[i]);
}
}
private static void printHewan(Reptil kumpulanReptil) {
System.out.println("============");
System.out.print(String.format("%s bersuara ", kumpulanReptil.nama));
kumpulanReptil.bersuara();
System.out.println(String.format("berjalan dengan %s",kumpulanReptil.alatBerjalan));
System.out.print(String.format("%s berordo ", kumpulanReptil.nama));
kumpulanReptil.ordo();
}
//Overloading -> nama functionnya boleh sama, tapi parameternya beda
private static void printHewan(Unggas[] kumpulanUnggas) {
for(int i = 0; i < kumpulanUnggas.length; i++) {
printHewan(kumpulanUnggas[i]);
}
}
private static void printHewan(Unggas kumpulanUnggas) {
System.out.println("============");
System.out.print(String.format("%s bersuara ", kumpulanUnggas.nama));
kumpulanUnggas.bersuara();
System.out.println(String.format("berjalan dengan %s",kumpulanUnggas.alatBerjalan));
System.out.print(String.format("%s berordo ", kumpulanUnggas.nama));
kumpulanUnggas.ordo();
}
}
pesan errornya Exception in thread "main" java.lang.NullPointerException at tugas.oop.hewan1.MainApp.printHewan(MainApp.java:90) at tugas.oop.hewan1.MainApp.printHewan(MainApp.java:83) at tugas.oop.hewan1.MainApp.main(MainApp.java:56)
Tanggapan
yang baris 90 yang mana? disitu ada tulisan error di baris MainApp.java:90