Questa domanda ha una leggera enfasi su Java ma si applica a qualsiasi linguaggio OO. È buona norma inizializzare le variabili di classe nelle loro dichiarazioni? Mi sembra ovviamente così. Riduce al minimo il rischio di errori di errore di puntatore nullo sciocco.Best practice per l'inizializzazione degli attributi degli oggetti in OO Languages
Ad esempio:
class myClass{
private String name = "";// initialize here
public myClass(){
//something
}
}
Ma in alcuni libri di testo non si preoccupano per inizializzare immediatamente. Che è migliore? Importa?
Questa non è una variabile di classe, è una variabile di istanza. –
In che modo un NPE è peggio del valore inizializzato, ma con un valore errato o non valido? –
Il segno è corretto. Una NullPointerException è meglio che fallire silenziosamente con un valore errato. –