Assertion (Identifier vs. Keyword)

 
 

Para o código

 
 

public class Identifier{

public static void main(String args[]){

boolean assert = false; // a palavra assert como identifier

}

}

 
 

Ao rodar o comando de compilação:

 
 

C:\Documents and Settings\Pedro\Desktop\assertion>javac -source 1.3 Identifier.java

Identifier.java:3: warning: as of release 1.4, ‘assert’ is a keyword, and may not be used as an iden

tifier

boolean assert = false;

^

(use -source 1.4 or higher to use ‘assert’ as a keyword)

1 warning

 
 

(sucesso!!!)

 
 

Ao rodar o comando de compilação:

 
 

C:\Documents and Settings\Pedro\Desktop\assertion>javac Identifier.java

Identifier.java:3: as of release 1.4, ‘assert’ is a keyword, and may not be used as an identifier

boolean assert = false;

^

(use -source 1.3 or lower to use ‘assert’ as an identifier)

1 error

 
 

Ao possuir a classe compilada (*.class) e rodar o comando execução:

 
 

C:\Documents and Settings\Pedro\Desktop\assertion>java -ea Identifier

 
 

(sucesso!!!)

 
 

Para o código:

 
 

public class Keyword{

public static void main(String args[]){

assert(false): “falso”; // a palavra assert como keyword

}

}

 
 

Ao rodar o comando de compilação:

 
 

 
 

C:\Documents and Settings\Pedro\Desktop\assertion>javac -source 1.3 Keyword.java

Keyword.java:3: warning: as of release 1.4, ‘assert’ is a keyword, and may not be used as an identifier

assert(false): “falso”;

^

(use -source 1.4 or higher to use ‘assert’ as a keyword)

Keyword.java:3: ‘;’ expected

assert(false): “falso”;

^

1 error

1 warning

 
 

 
 

Ao rodar o comando de compilação:

 
 

C:\Documents and Settings\Pedro\Desktop\assertion>javac Keyword.java

 
 

(sucesso!!!)

 
 

Ao possuir a classe compilada (*.class) e rodar o comando execução:

 
 

C:\Documents and Settings\Pedro\Desktop\assertion>java -ea Keyword

Exception in thread “main” java.lang.AssertionError: falso

at Keyword.main(Keyword.java:3)

 
 

Conforme demonstrado acima, a ocorrencia de uma exception (erro) se da pelo fato da instrução de assert:

  1. ser usada como keyword,
  2. habilitada (através da instrução -ea)
  3. e setada como false (veja o código)

     
     

 
 

Esta entrada foi publicada em Assertions com as etiquetas . ligação permanente.

Deixe uma Resposta

Preencha os seus detalhes abaixo ou clique num ícone para iniciar sessão:

Logótipo da WordPress.com

Está a comentar usando a sua conta WordPress.com Terminar Sessão / Alterar )

Imagem do Twitter

Está a comentar usando a sua conta Twitter Terminar Sessão / Alterar )

Facebook photo

Está a comentar usando a sua conta Facebook Terminar Sessão / Alterar )

Google+ photo

Está a comentar usando a sua conta Google+ Terminar Sessão / Alterar )

Connecting to %s