Eduardo
 
 
            Nao é a mesma coisa não, pois a variavel ob vai ser um TextField.
(...)
      Object ob = (Object) e.getComponent();
      if (ob instanceof TextField)
      {
         TextField tc = (TextField) ob;
         char c = e.getKeyChar();
         // Somente caracteres imprimiveis serao destruidos
         if ((c >= 32 && c <= 126) && (!e.isActionKey())) // ActionKey=teclas especiais
            if (tc.getText().length() >= tc.getColumns())
               e.consume();
      }
(...)
 
Reescrevendo a classe para ela se tornar igual a seu exemlpo...
 
class Base {}
class Sub extends Base {}
class Sub2 extends Base {}
public class CEx{
    public static void main(String argv[]){
Base b=new Sub();   //Aqui esta a diferenca,  b vai ser uma intancia de Sub e na questao b era uma instancia de
Base
Sub s=(Sub) b;
    }
}

----- Original Message -----
Sent: Tuesday, March 05, 2002 4:34 PM
Subject: [java-list] Casting

Alguém poderia me ajudar nesta questão? Estou enviando como anexo uma classe que faz a mesma coisa e não ocorre erro nenhum na linha 18.
 
 
Java Programmer Certification Mock Exam No 1

Question 17)

What will happen if you attempt to compile and run the following code?

class Base {}
class Sub extends Base {}
class Sub2 extends Base {}
public class CEx{
    public static void main(String argv[]){
	Base b=new Base();
	Sub s=(Sub) b;
    }
}

1) Compile and run without error
2) Compile time Exception
3) Runtime Exception

Answer 17)

 3) Runtime Exception

Without the cast to sub you would get a compile time error. The cast tells the compiler that you really mean to do this and the actual type of b does not get resolved until runtime. Casting down the object hierarchy as the compiler cannot be sure what has been implemented in descendent classes. Casting up is not a problem because sub classes will have the features of the base classes. This can feel counter intuitive if you are aware that with primitives casting is allowed for widening operations (ie byte to int).


------------------------------ LISTA SOUJAVA ----------------------------
http://www.soujava.org.br  -  Sociedade de Usuários Java da Sucesu-SP
dúvidas mais comuns: http://www.soujava.org.br/faq.htm
regras da lista: http://www.soujava.org.br/regras.htm
historico: http://www.mail-archive.com/java-list%40soujava.org.br
para sair da lista: envie email para [EMAIL PROTECTED]
-------------------------------------------------------------------------

Responder a