Torna indietro   Hardware Upgrade Forum > Software > Programmazione

Roborock Qrevo Curv 2 Flow: ora lava con un rullo
Roborock Qrevo Curv 2 Flow: ora lava con un rullo
Qrevo Curv 2 Flow è l'ultima novità di casa Roborock per la pulizia di casa: un robot completo, forte di un sistema di lavaggio dei pavimenti basato su rullo che si estende a seguire il profilo delle pareti abbinato ad un potente motore di aspirazione con doppia spazzola laterale
Alpine A290 alla prova: un'auto bella che ti fa innamorare, con qualche limite
Alpine A290 alla prova: un'auto bella che ti fa innamorare, con qualche limite
Abbiamo guidato per diversi giorni la Alpine A290, la prima elettrica del nuovo corso della marca. Non è solo una Renault 5 sotto steroidi, ha una sua identità e vuole farsi guidare
Recensione HONOR Magic 8 Lite: lo smartphone indistruttibile e instancabile
Recensione HONOR Magic 8 Lite: lo smartphone indistruttibile e instancabile
Abbiamo provato a fondo il nuovo Magic 8 Lite di HONOR, e per farlo siamo volati fino a Marrakech , dove abbiamo testato la resistenza di questo smartphone in ogni condizione possibile ed immaginabile. Il risultato? Uno smartphone praticamente indistruttibile e con un'autonomia davvero ottima. Ma c'è molto altro da sapere su Magic 8 Lite, ve lo raccontiamo in questa recensione completa.
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 25-12-2008, 11:04   #1
CosasNostras
Senior Member
 
L'Avatar di CosasNostras
 
Iscritto dal: Nov 2005
Città: Milano
Messaggi: 2867
[JAVA]Dubbio su questo piccolo codice

Ciao a tutti
Di seguito ho il seguente codice java:
Codice:
public class Mixer {

	Mixer(){}
	Mixer(Mixer m){
		m1=m; }
	Mixer m1;
	public static void main(String[] args) {
		Mixer m2 = new Mixer();
		Mixer m3 = new Mixer(m2); //m1=m2
		m3.go();
		
		Mixer m4 = m3.m1;   //???

		m4.go();
		
		Mixer m5 = m2.m1;  //???
		m5.go();
	
	}
	void go(){
		System.out.println("hi ");
	}

}
l'output di questo programma è :
Codice:
hi 
hi 
Exception in thread "main" java.lang.NullPointerException
	at Mixer.Mixer.main(Mixer.java:17)
non riesco a capire :
1)cosa fa di preciso la riga con i commenti "//???" di preciso m3.m1 ......scusate,c'è un oggetto m3 e sta richiamando un altro oggetto m1 come se fosse un metodo...ma come fa?? e il compilatore la fa passare.
2)invece m2.m1 ??e perchè mi solleva una classica eccezione di NullPointerException quando richiamo il metodo m5.go()?


Grazie 1000

Ultima modifica di CosasNostras : 25-12-2008 alle 11:06.
CosasNostras è offline   Rispondi citando il messaggio o parte di esso
Old 25-12-2008, 12:19   #2
wizard1993
Senior Member
 
L'Avatar di wizard1993
 
Iscritto dal: Apr 2006
Messaggi: 22462
il primo costruttore "???" non fa altro che inizializzare un oggetto mixer tramite un construttore ad un argomento(public Mixer(Mixer m){})
il secondo non fa altro che accedere alla variabile membro m1 e assegnarne il riferimento all'oggetto mixer4
il terzo fa come il secondo, l'ultimo giustamente si lamenta perchè la variabile membro non statica m1 dell'oggetto m2 non l'hai inizializzata
__________________
amd a64x2 4400+ sk939;asus a8n-sli; 2x1gb ddr400; x850 crossfire; 2 x western digital abys 320gb|| asus g1
Se striscia fulmina, se svolazza l'ammazza
wizard1993 è offline   Rispondi citando il messaggio o parte di esso
Old 25-12-2008, 13:38   #3
CosasNostras
Senior Member
 
L'Avatar di CosasNostras
 
Iscritto dal: Nov 2005
Città: Milano
Messaggi: 2867
Quote:
Originariamente inviato da wizard1993 Guarda i messaggi
il primo costruttore "???" non fa altro che inizializzare un oggetto mixer tramite un construttore ad un argomento(public Mixer(Mixer m){})
il secondo non fa altro che accedere alla variabile membro m1 e assegnarne il riferimento all'oggetto mixer4
il terzo fa come il secondo, l'ultimo giustamente si lamenta perchè la variabile membro non statica m1 dell'oggetto m2 non l'hai inizializzata
....però non riesco ancora a capire bene cosa fa m2.m1 vede che m2(che è = new Mixer()) non passa alcun parametro ...per cui si incaxxa?
CosasNostras è offline   Rispondi citando il messaggio o parte di esso
Old 25-12-2008, 14:38   #4
wizard1993
Senior Member
 
L'Avatar di wizard1993
 
Iscritto dal: Apr 2006
Messaggi: 22462
l'oggetto mixer ha due costruttori, uno senza argomenti e uno con un solo argomento. se invochi quello con gli argomenti la varibile membro m1 viene inizializzata con quello che gli passi come parametro, se invochi quello senza parametri invece la variabile membro m1 non viene mai inizializzata, e quindi non farà altro che mantenere un riferimento a null, causando la null pointer expection,
stessa cosa succederebbe se te lo inizializzasi passando come parametro null
__________________
amd a64x2 4400+ sk939;asus a8n-sli; 2x1gb ddr400; x850 crossfire; 2 x western digital abys 320gb|| asus g1
Se striscia fulmina, se svolazza l'ammazza
wizard1993 è offline   Rispondi citando il messaggio o parte di esso
Old 25-12-2008, 15:23   #5
CosasNostras
Senior Member
 
L'Avatar di CosasNostras
 
Iscritto dal: Nov 2005
Città: Milano
Messaggi: 2867
Quote:
Originariamente inviato da wizard1993 Guarda i messaggi
l'oggetto mixer ha due costruttori, uno senza argomenti e uno con un solo argomento. se invochi quello con gli argomenti la varibile membro m1 viene inizializzata con quello che gli passi come parametro, se invochi quello senza parametri invece la variabile membro m1 non viene mai inizializzata, e quindi non farà altro che mantenere un riferimento a null, causando la null pointer expection,
stessa cosa succederebbe se te lo inizializzasi passando come parametro null
sì sì questo mi era chiaro ......è che non riuscivo a capire cosa ci fosse dietro quel m3.m1 e m2.m1
CosasNostras è offline   Rispondi citando il messaggio o parte di esso
Old 25-12-2008, 15:33   #6
wizard1993
Senior Member
 
L'Avatar di wizard1993
 
Iscritto dal: Apr 2006
Messaggi: 22462
Quote:
Originariamente inviato da CosasNostras Guarda i messaggi
sì sì questo mi era chiaro ......è che non riuscivo a capire cosa ci fosse dietro quel m3.m1 e m2.m1
dalle tue parole non risco a capire se ti ho chiarito le idee o meno
__________________
amd a64x2 4400+ sk939;asus a8n-sli; 2x1gb ddr400; x850 crossfire; 2 x western digital abys 320gb|| asus g1
Se striscia fulmina, se svolazza l'ammazza
wizard1993 è offline   Rispondi citando il messaggio o parte di esso
Old 25-12-2008, 16:10   #7
CosasNostras
Senior Member
 
L'Avatar di CosasNostras
 
Iscritto dal: Nov 2005
Città: Milano
Messaggi: 2867
Quote:
Originariamente inviato da wizard1993 Guarda i messaggi
dalle tue parole non risco a capire se ti ho chiarito le idee o meno
indubbiamente
CosasNostras è offline   Rispondi citando il messaggio o parte di esso
Old 25-12-2008, 16:16   #8
wizard1993
Senior Member
 
L'Avatar di wizard1993
 
Iscritto dal: Apr 2006
Messaggi: 22462
Quote:
Originariamente inviato da CosasNostras Guarda i messaggi
indubbiamente
allora siamo a posto, per qualsiasi cosa non hai che da chiedere
__________________
amd a64x2 4400+ sk939;asus a8n-sli; 2x1gb ddr400; x850 crossfire; 2 x western digital abys 320gb|| asus g1
Se striscia fulmina, se svolazza l'ammazza
wizard1993 è offline   Rispondi citando il messaggio o parte di esso
Old 25-12-2008, 17:09   #9
CosasNostras
Senior Member
 
L'Avatar di CosasNostras
 
Iscritto dal: Nov 2005
Città: Milano
Messaggi: 2867
Quote:
Originariamente inviato da wizard1993 Guarda i messaggi
allora siamo a posto, per qualsiasi cosa non hai che da chiedere
grazie 1000
CosasNostras è offline   Rispondi citando il messaggio o parte di esso
Old 26-12-2008, 13:30   #10
malocchio
Senior Member
 
L'Avatar di malocchio
 
Iscritto dal: Feb 2007
Città: Verona
Messaggi: 1060
Mi sembra di aver già visto quel codice su un certo libro...
__________________
malocchio è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


Roborock Qrevo Curv 2 Flow: ora lava con un rullo Roborock Qrevo Curv 2 Flow: ora lava con un rull...
Alpine A290 alla prova: un'auto bella che ti fa innamorare, con qualche limite Alpine A290 alla prova: un'auto bella che ti fa ...
Recensione HONOR Magic 8 Lite: lo smartphone indistruttibile e instancabile Recensione HONOR Magic 8 Lite: lo smartphone ind...
Sony WF-1000X M6: le cuffie in-ear di riferimento migliorano ancora Sony WF-1000X M6: le cuffie in-ear di riferiment...
Snowflake porta l'IA dove sono i dati, anche grazie a un accordo con OpenAI Snowflake porta l'IA dove sono i dati, anche gra...
Google Pixel 10a disponibile al prezzo m...
Microsoft Copilot nei guai: email riserv...
AOC a 399€ su Amazon: QD-OLED 240 Hz e 0...
La Cina ha recuperato dal mare il primo ...
Boeing CST-100 Starliner: la NASA rende ...
hiop e TaDa uniscono le forze per trasfo...
Thermal Grizzly mostra il Ryzen 7 9850X3...
AMD Ryzen 'Olympic Ridge' Zen 6 per desk...
Donald Trump renderà pubbliche in...
Prezzo mai visto da mesi: ECOVACS DEEBOT...
Non solo S26, Samsung sta per lanciare a...
Windows 11 avrà a breve uno Speed...
Ask Intel: l'assistente IA che ti aiuta ...
Nasce Freedom.gov: il portale USA per ag...
Bose QuietComfort SC a 179,95€: ANC legg...
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: 18:45.


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