Välkommen till linuxportalen.se!

Linuxportalen.se är Sveriges största och aktivaste webbplats för användare av öppen- och fri programvara.

Du besöker Linuxportalen.se som gäst vilket begränsar din möjlighet att använda webbplatsens alla funktioner. Genom att registera dig som medlem får du inte bara möjlighet att söka bland webbplatsens innehåll, skapa nya och delta i befintliga diskussioner, skapa din egen blogg, kommunicera med andra medlemmar genom privata meddelanden och delta i omröstningar. Du får också tillgång till Veckans Kadavro - en seriestrip unikt skapad för Linuxportalen.se!

Registeringen sker snabbt och är helt kostnadsfri - tveka inte, bli medlem idag!

Fält med objekt

Hej!
Har fått ett fel som jag inte lyckas reda ut själv, såhär ser det ut:

TESTKLASS1:
public class Testklass1 {
private int namn;
Testklass1(int asd){
namn = asd;
}
public int getNamn(){
return namn;
}
}

EN ANNAN FIL:

public class Untitled1 {
public static void main(String[] args) {
Testklass1[] a11 = new Testklass1[2];
Testklass1 a22 = new Testklass1(123);
System.out.print(a22.getNamn());
System.out.print(a11[0].getNamn());

}
}

System.out.print(a22.getNamn()); Funkar perfekt men System.out.print(a11[0].getNamn()); ger detta felmeddelande:

java.lang.NullPointerException
at fragmentor2.Untitled1.main(Untitled1.java:Cool

Har sökt och testat men itne hittat orsaken.
Varför blir det såhär? Sad

Alternativ för kommentarvisning

Välj ditt önskade sätt att visa kommentarerna och klicka på "Spara" för att verkställa dina ändringar.

algells bild

Ska det verkligen vara hakparenteser runt 2an på raden med
Testklass1[] a11 = new Testklass1[2];

p3rras bild

Det bör det väl vara om det är ett fält?
----------------
Ohne Fleiss, kein Preiss!

---------------- Ohne Fleiss, kein Preiss!

algells bild

Jag har inte hållit på med Java på ett par år och kan ha kommit ihåg fel. Dock tycker jag att det ser ut som om du försöker komma åt ett objekt som du aldrig har skapat och initierat. Klassen skapas genom ett anrop till klassen Testklass1(int asd).
Du skulle behöva skriva nått i stil med:

Testklass1[] a11 = new Testklass1[2];
a11[0] = new Testklass1(123);
a11[1] = new Testklass1(123);

fredentofts bild

Visst är det så, dessutom kanske det inte skadar med en överlagrad konstruktor utan parameter, eftersom det ser ut som det är så klassen används här.

Testklass1() {
  this(<standardvärde>)
}

 
-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
Argumentera aldrig med idioter.
De drar bara ner dig till sin nivå och vinner på erfarenhet!

-
För övrigt anser jag att trådindenteringen måste lagas
-
-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-