Torna indietro   Hardware Upgrade Forum > Software > Programmazione

HONOR Magic 8 Pro: ecco il primo TOP del 2026! La recensione
HONOR Magic 8 Pro: ecco il primo TOP del 2026! La recensione
HONOR ha finalmente lanciato il suo nuovo flagship: Magic 8 Pro. Lo abbiamo provato a fondo in queste settimane e ve lo raccontiamo nella nostra recensione completa. HONOR rimane fedele alle linee della versione precedente, aggiungendo però un nuovo tasto dedicato all'AI. Ma è al suo interno che c'è la vera rivoluzione grazie al nuovo Snapdragon 8 Elite Gen 5 e alla nuova MagicOS 10
Insta360 Link 2 Pro e 2C Pro: le webcam 4K che ti seguono, anche con gimbal integrata
Insta360 Link 2 Pro e 2C Pro: le webcam 4K che ti seguono, anche con gimbal integrata
Le webcam Insta360 Link 2 Pro e Link 2C Pro sono una proposta di fascia alta per chi cerca qualità 4K e tracciamento automatico del soggetto senza ricorrere a configurazioni complesse. Entrambi i modelli condividono sensore, ottiche e funzionalità audio avanzate, differenziandosi per il sistema di tracciamento: gimbal a due assi sul modello Link 2 Pro, soluzione digitale sul 2C Pro
Motorola edge 70: lo smartphone ultrasottile che non rinuncia a batteria e concretezza
Motorola edge 70: lo smartphone ultrasottile che non rinuncia a batteria e concretezza
Motorola edge 70 porta il concetto di smartphone ultrasottile su un terreno più concreto e accessibile: abbina uno spessore sotto i 6 mm a una batteria di capacità relativamente elevata, un display pOLED da 6,7 pollici e un comparto fotografico triplo da 50 MP. Non punta ai record di potenza, ma si configura come alternativa più pragmatica rispetto ai modelli sottili più costosi di Samsung e Apple
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 12-03-2008, 15:26   #1
8rebel6
Junior Member
 
Iscritto dal: Feb 2008
Messaggi: 8
[JAVA] problemino nullPointerException

salve a tutti vorrei cortesemente sapere come mai non riesco a stampare a video il contenuto di un array di oggetti xche incappo sempre in un nullPointerException.

Riporto qua sotto le due classi :

CLASSE MIOSOGGETTO

public class MioSoggetto {

private String cognome;
private String nome;
private String luogoNascita;
private String dataNascita;

//metodi get
public String getCognome()
{
return cognome;
}
public String getNome()
{
return nome;
}
public String getLuogoNascita()
{
return luogoNascita;
}
public String getDataNascita()
{
return dataNascita;
}

//metodi set
public void setCognome(String cognome)
{
this.cognome = cognome;
}
public void setNome(String nome)
{
this.nome = nome;
}
public void setLuogoNascita(String luogoNascita)
{
this.luogoNascita = luogoNascita;
}
public void setDataNascita(String dataNascita)
{
this.dataNascita = dataNascita;
}


CLASSE MAIN

MioSoggetto [] mioSoggetto = new MioSoggetto[5];

mioSoggetto[0].setCognome("Rossi");
mioSoggetto[0].setNome("Paolo");
mioSoggetto[0].setLuogoNascita("Torino");
mioSoggetto[0].setDataNascita("16/10/1978");

mioSoggetto[1].setCognome("Granieri");
mioSoggetto[1].setNome("Manuela");
mioSoggetto[1].setLuogoNascita("Roma");
mioSoggetto[1].setDataNascita("08/09/1980");

mioSoggetto[2].setCognome("Moro");
mioSoggetto[2].setNome("Tommaso");
mioSoggetto[2].setLuogoNascita("Ivrea");
mioSoggetto[2].setDataNascita("11/12/1969");

mioSoggetto[3].setCognome("Giuliano");
mioSoggetto[3].setNome("Salvatore");
mioSoggetto[3].setLuogoNascita("Secondigliano");
mioSoggetto[3].setDataNascita("04/12/1971");

mioSoggetto[4].setCognome("Riina");
mioSoggetto[4].setNome("Salvatore");
mioSoggetto[4].setLuogoNascita("Corleone");
mioSoggetto[4].setDataNascita("05/07/1941");

//SE VOLESSI STAMPARE IL COGNOME DELLA POSIZIONE ZERO VA IN ERRORE
System.out.println (mioSoggetto[0].getCognome);
}

SE QUALCUNO HA TEMPO...

GRAZIE MILLE
8rebel6 è offline   Rispondi citando il messaggio o parte di esso
Old 12-03-2008, 15:37   #2
sottovento
Senior Member
 
L'Avatar di sottovento
 
Iscritto dal: Nov 2005
Città: Texas
Messaggi: 1722
Ciao,
MioSoggetto [] mioSoggetto = new MioSoggetto[5];
alloca l'array ma non il singolo oggetto, non e' come C++!

Dopo aver eseguito questa istruzione, devi allocare il singolo oggetto, magari usando un codice simile a questo:
Codice:
for (int i = 0; i < mioSoggetto.length; i++)
  mioSoggetto[i] = new MioSoggetto ();
__________________
In God we trust; all others bring data
sottovento è offline   Rispondi citando il messaggio o parte di esso
Old 12-03-2008, 15:45   #3
8rebel6
Junior Member
 
Iscritto dal: Feb 2008
Messaggi: 8
Quote:
Originariamente inviato da sottovento Guarda i messaggi
Ciao,
MioSoggetto [] mioSoggetto = new MioSoggetto[5];
alloca l'array ma non il singolo oggetto, non e' come C++!

Dopo aver eseguito questa istruzione, devi allocare il singolo oggetto, magari usando un codice simile a questo:
Codice:
for (int i = 0; i < mioSoggetto.length; i++)
  mioSoggetto[i] = new MioSoggetto ();
grazie dell'aiuto bye
8rebel6 è offline   Rispondi citando il messaggio o parte di esso
Old 12-03-2008, 19:03   #4
banryu79
Senior Member
 
L'Avatar di banryu79
 
Iscritto dal: Oct 2007
Città: Padova
Messaggi: 4131
Già che ci sei, per comodità potresti implementare nella classe MioSoggetto un costruttore che prende in ingresso i parametri che setti con i metodi getter/setter :

Codice:
...
public class MioSoggetto {

// dichiarazione esplicita costruttore di default: se dichiari altri costruttori
// ma vuoi comunque poter usare quello di default allora devi esplicitarlo
public MioSoggetto() {}

// dichiarazione costruttore con parametri, per comodità
public MioSoggetto(String cogn, String nom, String lnasc, String dnasc) {
    cognome = cogn;
    nome = nom;
    luogoNascita = lnasc;
    dataNascita = dnasc;
}

}
In questo modo puoi sia inizializzare un array di oggetti di default in un ciclo for() come nell'esempio di sottovento che inizializzare un oggetto alla volta ma invece di dover scrivere:

Codice:
...
mioSoggetto[0] = new MioSoggetto();
mioSoggetto[0].setCognome("Rossi");
mioSoggetto[0].setNome("Paolo");
mioSoggetto[0].setLuogoNascita("Torino");
mioSoggetto[0].setDataNascita("16/10/1978");
...
puoi accorciare un po' il codice:

Codice:
...
mioSoggetto[0] = new MioSoggetto("Francesco", "Baro", "Padova", "08/06/1979");
...
Ciao
banryu79 è offline   Rispondi citando il messaggio o parte di esso
Old 13-03-2008, 09:07   #5
8rebel6
Junior Member
 
Iscritto dal: Feb 2008
Messaggi: 8
Quote:
Originariamente inviato da banryu79 Guarda i messaggi
Già che ci sei, per comodità potresti implementare nella classe MioSoggetto un costruttore che prende in ingresso i parametri che setti con i metodi getter/setter :

Codice:
...
public class MioSoggetto {

// dichiarazione esplicita costruttore di default: se dichiari altri costruttori
// ma vuoi comunque poter usare quello di default allora devi esplicitarlo
public MioSoggetto() {}

// dichiarazione costruttore con parametri, per comodità
public MioSoggetto(String cogn, String nom, String lnasc, String dnasc) {
    cognome = cogn;
    nome = nom;
    luogoNascita = lnasc;
    dataNascita = dnasc;
}

}
In questo modo puoi sia inizializzare un array di oggetti di default in un ciclo for() come nell'esempio di sottovento che inizializzare un oggetto alla volta ma invece di dover scrivere:

Codice:
...
mioSoggetto[0] = new MioSoggetto();
mioSoggetto[0].setCognome("Rossi");
mioSoggetto[0].setNome("Paolo");
mioSoggetto[0].setLuogoNascita("Torino");
mioSoggetto[0].setDataNascita("16/10/1978");
...
puoi accorciare un po' il codice:

Codice:
...
mioSoggetto[0] = new MioSoggetto("Francesco", "Baro", "Padova", "08/06/1979");
...
Ciao
grazie sei stato miolto utile. ciao
8rebel6 è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


HONOR Magic 8 Pro: ecco il primo TOP del 2026! La recensione HONOR Magic 8 Pro: ecco il primo TOP del 2026! L...
Insta360 Link 2 Pro e 2C Pro: le webcam 4K che ti seguono, anche con gimbal integrata Insta360 Link 2 Pro e 2C Pro: le webcam 4K che t...
Motorola edge 70: lo smartphone ultrasottile che non rinuncia a batteria e concretezza Motorola edge 70: lo smartphone ultrasottile che...
Display, mini PC, periferiche e networking: le novità ASUS al CES 2026 Display, mini PC, periferiche e networking: le n...
Le novità ASUS per il 2026 nel settore dei PC desktop Le novità ASUS per il 2026 nel settore de...
DJI Mini 4 Pro Fly More Combo a 859€ su ...
Roborock in offerta su Amazon: QV 35A e ...
Crisi della RAM: Intel rassicura sul mer...
Dreame taglia i prezzi su Amazon: L40 Ul...
ChatGPT, arrivano gli annunci pubblicita...
iPhone Air a un nuovo minimo storico su ...
Datacenter e materie prime: Amazon acqui...
StackWarp: una nuova vulnerabilità...
Il telescopio spaziale James Webb ha cat...
Il razzo spaziale europeo Ariane 6 lance...
Il lander lunare Blue Origin Blue Moon M...
Gli LLM riescono a risolvere problemi ma...
Smettila con quei cioccolatini. Per San ...
Il secondo lancio del razzo spaziale eur...
MaiaSpace ed Eutelsat stringono un accor...
Chromium
GPU-Z
OCCT
LibreOffice Portable
Opera One Portable
Opera One 106
CCleaner Portable
CCleaner Standard
Cpu-Z
Driver NVIDIA GeForce 546.65 WHQL
SmartFTP
Trillian
Google Chrome Portable
Google Chrome 120
VirtualBox
Tutti gli articoli Tutte le news Tutti i download

Strumenti

Regole
Non Puoi aprire nuove discussioni
Non Puoi rispondere ai messaggi
Non Puoi allegare file
Non Puoi modificare i tuoi messaggi

Il codice vB è On
Le Faccine sono On
Il codice [IMG] è On
Il codice HTML è Off
Vai al Forum


Tutti gli orari sono GMT +1. Ora sono le: 10:41.


Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Served by www3v