» »

Java težava pri kreiranju objekta

Java težava pri kreiranju objekta

robcek23 ::

Ni mi jasno zakaj stvar ne deluje.

Čisto na začetku v classu imam definirano;
public static Oseba [] person;

No potem pa kreiram tabelo objektov z stevilom oseb v main classu;
person = new Oseba[numberOfPersons];

Prevajalnik pa mi javi napako tukaj
person [i] = new Oseba(index);

error: non-static variable this cannot be referenced from a static context

S kazalcem pri new


Ni mi jasno zakaj to ne deluje in kako bi popravil..kakšna ideja?

BivšiUser2 ::

 Osebe o []=new Osebe[stevilo_oseb];
SloTech - če nisi z nami, si persona non grata.

robcek23 ::

Nevermind sm ze popravil... tezava je bila da sem class za objekt dal v istem classu kot tistega z main

BivšiUser2 ::

Imam eno funkcijo, ki sprejme vrednost, vendar mi funkcija vrže error nullErrorException.
Inicializiram array objektov;
 Osebe [] osebe=new Osebe[stevilo_interesentov+1];

Vstavlja sifro v zanki

osebe[i].dobi_sifro(i);

Funkcija dobi sifro:
 public void dobi_sifro(int sifra)
    {
        this.sifra=sifra;
    }

Naj še povem, da je class Osebe znotraj glavnega class-a ker mi javac zajoka, da več kot en glavni public class nemre biti v datoteki, čeprav jih dve + eno dedovano.

edit: *čeprav jih rabim dve + eno dedovano.
SloTech - če nisi z nami, si persona non grata.

Zgodovina sprememb…

<b>klima</b> ::

Daj prilepi tisti del kode, ki ti vrže NullPointerException, da ti lahko pomagamo... (številko vrstice dobiš v izpisanem stack trace-u)

BivšiUser2 ::

 for(int i=0;i<osebe.length;i++)
       {   
           try{
           osebe[i].dobi_sifro(i);
           }
           catch(NullPointerException e)
           {
               System.out.println("Izjema "+ e.getMessage());
           }
   ..........
        }

Pač rabim, šifro, ker stvar kasneje sortiram po drugem atributu.
SloTech - če nisi z nami, si persona non grata.

xmetallic ::

BivšiUser2 je izjavil:


Naj še povem, da je class Osebe znotraj glavnega class-a ker mi javac zajoka, da več kot en glavni public class nemre biti v datoteki, čeprav jih dve + eno dedovano.

edit: *čeprav jih rabim dve + eno dedovano.


class classA {

}

class classB {

}

public class classC {

    public static void main(String[] args) {
     
    }
}

Zgodovina sprememb…

  • spremenilo: xmetallic ()

BivšiUser2 ::

Mah sem ugotovil. Spet ena ful ful bedna. Moral bi kreirati objekt s konstruktorjem. Nekaj takega:
studentArray[i]=new Student();
SloTech - če nisi z nami, si persona non grata.

xmetallic ::

class Student {
    Student() {
        
    }
}

Student studentArray[] = new Student[10];
studentArray[i] = new Student();


Mimogrede, Google pozna odgovore na vsa vprašanja.

Zgodovina sprememb…

  • spremenilo: xmetallic ()


Vredno ogleda ...

TemaSporočilaOglediZadnje sporočilo
TemaSporočilaOglediZadnje sporočilo
»

[Java] "Uničenje" objekta ?

Oddelek: Programiranje
111213 (905) shadeX
»

C# LinkedList

Oddelek: Programiranje
91189 (1040) PoPon2
»

Objektno programiranje Java

Oddelek: Programiranje
111383 (1241) Spartacus
»

[C#] izdelava tabele

Oddelek: Programiranje
71991 (1817) majoneza
»

[Java] Sortiranje objektov

Oddelek: Programiranje
192849 (2849) tjaz24

Več podobnih tem