Literal int  XML
Índice dos Fóruns » Certificação Java
Autor Mensagem
rafabene
Thread.start()

Membro desde: 03/07/2003 11:32:16
Mensagens: 49
Offline

Esta dúvida eu não poderia deixar de enviar.

Até onde eu sabia, toda literal inteira era tratada como int. Ou seja, o fragmento de código abaixo geraria um erro de cast já que 1,2 e 3 seriam tratados como int e daria um erro de compilação conforme inclusive o Certification Guide pag. 109.

byte b = 1;
short s = 2;
char c = 3;

Só que no meu compilardor Sun 1.4.1 as atribuições são válidas. Agora fica a minha dúvida, caso tenha um questão como vi no simulado:



E eu reponder que roda enquanto uma possível prova destualizada disser que dá erro na atribuição do "z" ?
É possível ter provas destualizadas ? É um bug da minha versão já que ainda não testei com 1.4.2 ?
Está na JLS ? O que devo colocar na prova ?
rafabene
Thread.start()

Membro desde: 03/07/2003 11:32:16
Mensagens: 49
Offline

Ih Gente foi mal, agora que eu vi que no caso de literais inteiras acontece um "relaxamento" a regra.
ricardolecheta
GUJ Master
[Avatar]

Membro desde: 17/05/2003 13:42:10
Mensagens: 1486
Localização: Curitiba
Offline

o compilador irá fazer o cast implicitamente quando for uma "compile time constant", isto é um número(1,2,3...) ou uma variável declarada como final. Se fugir esta regra vc terá que fazer o cast!


Ricardo R. Lecheta
Livro - Google Android (português)
http://www.livroandroid.com.br/
http://livroandroid.blogspot.com/
http://www.livetouch.com.br/
 
Índice dos Fóruns » Certificação Java
Ir para:   
Powered by JForum 2.1.8 © JForum Team