Quiz do Whizlabs

Pessoal,

Eu estava fazendo um quiz do whizlabs e me deparei com a seguinte questão:
The “null” is a reserved keyword??

A - True
B - False

A minha resposta foi a B, mas para o whizlabs a certa é A.
O que vc´s acham? Tá errado né?
Só tem duas palavras reservadas com ‘N’ (native e new).

Francisco

http://www.javaprepare.com/notes/funda.html

[]'s

Show!!

A Kathy não cita nada sobre esses keywords no seu livro. Na versão para SCJP 1.5 ela só adicionou o enum.

Valeu !!!

Francisco

Furo dela então, tenta declarar um atributo com o nome ‘null’ que o compilador vai reclamar.

Não é furo do livro da Kathy; é que ela está seguindo rigorosamente a JLS (Java Language Specification).

(Cuidado que nem sempre esses simulados estão 100% corretos :frowning: )

Se você der uma olhada na lista de keywords, vai ver que null, true e false não são palavras-chave e sim literais, assim como o “0”.

Mas esse tipo de sutileza bizantina não deve cair na prova do Java 5.0 (há muito mais coisas complicadas para cair para eles se preocuparem com essas coisas que só interessam a quem escreve compiladores).

E a propósito, exatamente porque é um literal que você não pode declarar um atributo com nome de “true”, “false” ou “null”. É a mesma coisa que declarar um atributo com nome do dígito 0.

public String 0 = 10;
public float false = 3.14;