ho inciampato attraverso un codice piuttosto strano che io sono sorpreso non causa un erroreStrano codice uscita
public class WeirdCode {
public static int fooField = 42;
public WeirdCode getFoo(){
return null;
}
public static void main(String args[]) {
WeirdCode foo = new WeirdCode();
System.out.println(foo.getFoo().fooField);
}
}
Sorprendentemente, esso stampa 42! Qualcuno può spiegare?
Cosa ti aspettavi sarebbe tornato? –
@ReutSharabani Ho pensato che avrebbe gettato un NullPointerException – Michael
Penso che i downvoters non abbiano davvero letto il codice fino in fondo. Questa non è una brutta domanda. Ho certamente pensato che avrebbe gettato. Grazie per avermi permesso di imparare qualcosa di nuovo. +1 – sstan