Originariamente inviato da faro14

Codice PHP:
if(oggetto!=null && oggetto.getSottoOggetto!=null)
   ... 
è giusto e invece
Codice PHP:
if(oggetto.getSottoOggetto!=null)
   ... 
può dare errori
questo è il codice

Sotto Java è la stessa identica cosa. Tuttavia penso che sia più inesperienza (non pensarci) che altro, una volta che spieghi il perché il secondo caso genera errore se oggetto è null , poi non ci ricaschi più.
questo è quello che hai detto tu (che è fondamentalmente errato).

questo è quello c he ho detto io

manco per sogno.
Indipendentemente dal linguaggio, la prima versione va bene, la seconda darà una NUllPointerException SEMPRE
e infine (devi aver riletto, non so)
La prima versione controlla che oggetto sia diverso da null e nel caso verifica la seconda condizione dell'istruzione If

La seconda versione se oggetto è diverso da null funziona (esattamente come la prima) , se invece è null genera eccezione.

Il codice di questo esempio è un "classico" che capita spesso.

Se pensi comunque di aver ragione spiega perchè dovrebbe dare errore (secondo me sbagli) .
dopo che ho rimesso tutto insieme, dimmi in cosa sbaglio.