Du verwendest einen veralteten Browser. Es ist möglich, dass diese oder andere Websites nicht korrekt angezeigt werden. Du solltest ein Upgrade durchführen oder ein alternativer Browser verwenden.
import java.awt.*;
public class Car {
String make;
Point doorArr[];
Car(String m, int a){
make = m;
Point doorArr[] = new Point[a];
for (int i = 0; i<=3; i++){
doorArr[i] = new Point(1,1);
//System.out.println("debug");
}
}
public static void main (String args[]){
Car autos[] = new Car[3];
int tueren = 0;
autos[0] = new Car("Ferarri", 2);
autos[1] = new Car("Opel", 4);
autos[2] = new Car("Ford", 4);
for (int i = 0; i<=2; i++ ){
tueren = tueren + autos[i].doorArr.length;
}
System.out.println("Alle Tueren: " + tueren);
}
}
Fehlermeldung:
Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: 2
at Car.<init>(Car.java:12)
at Car.main(Car.java:22)
hab ich gemacht, der Fehler ist mir jetzt auch klar aber einer muss sich immer noch darin verstecken. Das ganze sieht jetzt so aus:
[Java]
import java.awt.*;
public class Car {
String make;
Point doorArr[];
Car(String m, int a){
make = m;
Point doorArr[] = new Point[a];
for (int i = 0; i<doorArr.length; i++){
doorArr = new Point();
}
}
public static void main (String args[]){
Car autos[] = new Car[3];
int tueren = 0;
autos[0] = new Car("Ferarri", 2);
autos[1] = new Car("Opel", 4);
autos[2] = new Car("Ford", 4);
for (int i = 0; i<3; i++ ){
tueren = tueren + autos.doorArr.length;
}
System.out.println("Alle Tueren: " + tueren);
}
}
[/code]
jetzige Fehlermeldung:
Exception in thread "main" java.lang.NullPointerException
at Car.main(Car.java:28)
Und zur klasse Point darin, das ergibt keinen Sinn, es ist zu reinen Übungszwecken für eine Klausur. Die Points wären eigentlich eine eigene Klasse Door aber ich wollte eigentlich nur mal schnell testen, ob ich das ganze programmieren kann. Und wollte nicht erst eine Klasse Door schreiben das würde es für mich noch weiter verkomplizieren.
aber doorArr[] soll doch ein Attribut jedes, Objekts Car sein, es wird ja jedes mal für ein anderes Objekt Car definiert (aus dem Array autos[]).
Das sollte zumindest so sein. muss das anders gemacht werden?
Du legst anstelle der Anzahl von Türen, ein Array an, das so lang ist, wie ein Auto Türen hat und befüllst das dann auch noch mit Objekten die völlig sinnlos sind.
Steh ICH aufm Schlauch oder ist das total Banane? Wenn du dir die Hausnummer 20 merken willst bindest du dir doch nicht 20 Armbänder um den Arm sondern schreibst dir 20 aufn Zettel.
Du legst anstelle der Anzahl von Türen, ein Array an, das so lang ist, wie ein Auto Türen hat und befüllst das dann auch noch mit Objekten die völlig sinnlos sind.
Und zur klasse Point darin, das ergibt keinen Sinn, es ist zu reinen Übungszwecken für eine Klausur. Die Points wären eigentlich eine eigene Klasse Door aber ich wollte eigentlich nur mal schnell testen, ob ich das ganze programmieren kann. Und wollte nicht erst eine Klasse Door schreiben das würde es für mich noch weiter verkomplizieren.