Ich werde ein Programm erstellen, die Benutzer fragen, wie viele Fahrzeuge sie in der Garage speichern möchten, und lassen Sie den Benutzer die Informationen des Fahrzeugs und speichern in Array, hier ist der Code :Java-Methode und Konstruktor kann nicht angewendet werden
public class Main {
static class veh {
int roda;
String warna;
String merk;
public veh(int roda, String warna, String merk){
this.roda = roda;
this.warna = warna;
this.merk = merk;
}
private void setRoda(){
}
private void setWarna(){
}
private void setMerk(){
}
}
public static void main(String[] args) {
Scanner in = new Scanner(System.in);
System.out.print("Pemilik Garasi\t: ");
String nama = in.nextLine();
System.out.print("NIM\t\t\t\t: ");
String nim = in.next();
System.out.print("Kelas\t\t\t: ");
String kls = in.next();
System.out.print("Masukkan Luas Garasi\t:");
int luas = in.nextInt();
veh[] data = new veh[luas];
System.out.println("============================");
for (int i = 0; i < luas; i++) {
veh vehicle = new veh();
System.out.println("Masukkan Data Kendaraan Ke " + (i + 1));
System.out.print("Jumlah Roda\t: ");
vehicle.setRoda(in.nextInt());
System.out.print("Warna\t\t: ");
vehicle.setWarna(in.next());
System.out.print("Merk\t\t: ");
vehicle.setMerk(in.next());
data[i] = vehicle;
}
System.out.println("====== GARASI PRIBADI ======");
System.out.println("Milik \t: " + nama);
System.out.println("NIM \t: " + nim);
System.out.println("Kelas \t: " + kls);
System.out.println("============================");
for (int i = 0; i < luas; i++) {
System.out.println("Kendaraan Ke " + (i + 1));
System.out.println("Jumlah Roda\t : " + data[i].roda);
System.out.println("Warna\t\t : " + data[i].warna);
System.out.println("Merk\t\t : " + data[i].merk);
System.out.println("--------------------------");
}
}
}
Wenn ich es kompilieren, ich in dieser Zeile einen Fehler bekam:
veh vehicle = new veh();
vehicle.setRoda(in.nextInt());
vehicle.setWarna(in.next());
vehicle.setMerk(in.next());
ich weiß wirklich nicht, wie Getter/Setter arbeiten, ich bin neu in Java Programming Language, tat Ich habe etwas falsch geschrieben?
Danke, was nur ich brauchte, aber tut die Getter wirklich notwendig? Ich habe versucht, die void setters in private zu verwandeln, und stellte überhaupt keine getters her, und es funktioniert auch. –
Die Idee ist, die Setter und Getter von außerhalb der Klasse zugänglich zu machen und die Mitglieder selbst privat. In Ihrem Fall sind die Mitglieder der Veh-Klasse nun von main aus erreichbar, da main ebenfalls Mitglied dieser Klasse ist und daher auf alle ihre Mitglieder und Methoden zugreifen kann. –
Also, wenn ich nur 1 Java-Datei habe, und beide der Klasse in der Hauptklasse sind, funktioniert nur die Verwendung von Setter mit privaten Klasse? –