Ciao a tutti.
Ho un array di oggetti. Riesco a fare l'inserimento in esso, ma quando poi voglio l'output dell'array attraverso 2 metodi getProcesso(), e getMemoria(), non funge.
la classe VirtualMemory
il file circolare2codice:/** * @(#)ArrayOggetti.java * * * @author * @version 1.00 2012/1/23 */ package PackArray; public class VirtualMemory{ private char p; private int m; public VirtualMemory (char processo , int memoria) { this.p = processo; this.m = memoria; } public char getProcesso (){ return this.p; } public int getMemoria (){ return this.m; } }
questo l'errore che genera:codice:/** * @(#)Circolare2.java * * * @author * @version 1.00 2012/1/23 */ import java.io.*; import prog.io.*; import PackArray.*; class Circolare2 { public static void main(String[] args) { int DIM = 5; int in=0; VirtualMemory[] Arraymemoria; Arraymemoria =new VirtualMemory [DIM]; //crea l'array di oggetti VirtualMemory ConsoleInputManager input= new ConsoleInputManager(); ConsoleOutputManager output= new ConsoleOutputManager(); while (input.readSiNo("********VUOI INSERIRE ALTRI PROCESI?********: ")){ char Processo= input.readChar("Inserisci il PROCESSO: "); int Memoria= input.readInt("Inserisci la dimenzione della Memoria che occupa: "); Arraymemoria[in]= new VirtualMemory(Processo, Memoria); //inserisce la stringa in posizione in in = (in+1)%DIM; //incrementa la posizione di ingresso in modo circolare } System.out.println ("RESOCONTO DELLa MEMORIA VIRTUALE:\n"); for (int i=0; i<Arraymemoria.length ; i++){ //System.out.print (Arraymemoria[i].toString()); Arraymemoria[i].getProcesso(); Arraymemoria[i].getMemoria(); } } }
come posso sistemarlo?codice:Exception in thread "main" java.lang.NullPointerException at Circolare2.main(Circolare2.java:42) Process completed.
grazie

Rispondi quotando