- use UsoTeste.this.metodo(0); que funciona. Como você disse, o método não
está na classe que está o "chamando".



| ---------------------------------------- |
|  Marcelo Barbosa Alves (sourbox - xfer)  |
|  [EMAIL PROTECTED]   -   ICQ : 4311482  |
| ---------------------------------------- |
|          .: sourbox - xfer :.            |
| ---------------------------------------- |


----- Original Message -----
From: "Elvis Tanajura Vaz" <[EMAIL PROTECTED]>
To: <[EMAIL PROTECTED]>
Sent: Monday, April 29, 2002 12:10 PM
Subject: [java-list] Jdk1.3.1 + bug?? + interface


| Não sei se isso é realmente um Bug, alguem poderia me
| esplicar melhor.
|
| Quando implemento uma interface em uma classe e
| sobrecarrego o método da interface não acontece nenhum
| tipo de erro (Exemplo 1)...
|
| Mas, quando implemento a interface em uma classe
| interna(Exemplo 2) ou instancio como classe
| anônima(Exemplo 3) o compilador me retorna um erro que
| nao pode encontrar o método. Método esse que esta na
| classe principal(UsoTeste)
|
| TesteListener.java:58: metodo() in  cannot be applied
| to (int)
|                                 metodo(0);
|                                 ^
|
| Mas, se eu alterar a assinatura do método
| funciona(metodo(int) -->
| metodo_nao_sobrecarregado(int) )!!
|
|
|
|
| Aguardo comentários....
|
|
| Elvis Tanajura Vaz
|
|
| _______________________________________________________________________
| Yahoo! Encontros
| O lugar certo para você encontrar aquela pessoa que falta na sua vida.
Cadastre-se hoje mesmo!
| http://br.encontros.yahoo.com/


----------------------------------------------------------------------------
----


| interface TesteListener{
| public void metodo();
| }
| class Teste{
| TesteListener t;
| public Teste(TesteListener t){
| this.t = t;
| }
| public void chamarListener(){
| t.metodo();
| }
| }
| // Teste com implementacao
| /*class UsoTeste implements TesteListener{
| public Teste te;
| public UsoTeste(){
| te = new Teste(this);
| te.chamarListener();
| }
| public void metodo(){
| System.out.println("Chamou o metodo");
| metodo(0);
| }
| public void metodo(int i){
| System.out.println("Chamou o metodo com parametro");
| }
| }*/
|
| // Teste com classe interna
| class UsoTeste{
| public Teste te;
| public UsoTeste(){
| te = new Teste(new Interna());
| te.chamarListener();
| }
| public void metodo(int i){
| System.out.println("Chamou o metodo com parametro");
| }
| public void metodo_nao_sobrecarregado(int i){
| System.out.println("Chamou o metodo nao sobrecarregado");
| }
| class Interna implements TesteListener{
| public void metodo(){
| System.out.println("Chamou o metodo");
| metodo_nao_sobrecarregado(0)
| metodo(0);
| }
| }
| }
| // Teste com classe anonima
| /*
| class UsoTeste{
| public Teste te;
| public UsoTeste(){
| te = new Teste(new TesteListener(){
| public void metodo(){
| System.out.println("Chamou o metodo");
| metodo(0);
| }
| });
| te.chamarListener();
| }
| public void metodo(int i){
| System.out.println("Chamou o metodo com parametro");
| }
| }
| */
|


----------------------------------------------------------------------------
----


------------------------------ 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]
-------------------------------------------------------------------------


------------------------------ 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