2009-02-06 14 views
6

È null è una parola chiave in Java?null è una parola chiave Java?

+0

Perché questa domanda è -1? – Mystic

+4

probabilmente perché ci sarebbe voluto meno tempo per cercare la risposta su Google piuttosto che per chiederlo.Il secondo risultato di google ha la risposta nel riepilogo, non dovresti nemmeno cliccare sul link. – DevinB

+0

No, non è letterale Java.You possibile ciò nulla è [qui] [1] [1]: http://stackoverflow.com/questions/2707322/what-is-null-in-java/7258515 # 7258515 –

risposta

6

No.Non è una parola chiave.

46

Non secondo lo Java Language Specification list of keywords. D'altra parte, questo non compila:

int null = 10; 

Il rules for identifiers specificare che:

Un identificatore è un numero illimitato di lunghezza sequenza di lettere Java e Java cifre, la prima delle che deve essere una lettera Java . Un identificatore non può avere la stessa ortografia (sequenza di caratteri Unicode ) come parola chiave (§3.9), booleano letterale (§3.10.3) o valore letterale null (§3.10.7).

Non sono sicuro di quale sia il vantaggio di renderlo non-una-parola chiave, ad essere onesti.

+0

Lol, questa risposta implica che esistono implementazioni di Java che accettano null come parola chiave. –

+0

Gamecat, il modo in cui l'ho letto, dice chiaramente che la specifica non considera null una parola chiave. – tehvan

11

Non uno keyword - il null literal.

un identifier (ops, no, non lo è)

+1

Non è nemmeno un identificatore, secondo http://java.sun.com/docs/books/jls/third_edition/html/lexical.html#40625 –

+0

Sì, l'ho già capito per errore e l'ho risolto ... –

1

vero e falsa sono anche letterali. Curiosità Java: const e goto sono parole chiave.

6

nullo è un letterale, nello stesso senso che falso, e '\ n' sono letterali. Non è una "parola chiave", tecnicamente, ma è una stringa di caratteri che viene trattata appositamente dal compilatore se il compilatore la trova in un file sorgente java.

Quindi, no, non è possibile denominare una variabile "null". L'analizzatore lessicale deciderà che non si tratta di un identificatore.

6

null è un valore letterale simile a true e false in java. Queste non sono parole chiave perché questi sono i valori di qualcosa. Come null è il valore della variabile di riferimento, true è il valore di una variabile booleana.

0

No. null non è una parola chiave in java ..

0

suo rappresenta un valore speciale, ma la sua non è una parola chiave in java e non significa che siamo in grado di usarlo come un identificatore sua ristretta di essere usato come identificatore e questo è ovvio perché non possiamo avere un valore speciale come identificativo perché il compilatore tratterà quella parola (null) come valore speciale non come identificatore.

Problemi correlati