Leandro,
        Essa visão sobre interfaces está correta, ela não permite
implementações. Porém, nada impede a uma classe, com visibilidade para essa
interface, de acessar e implementar os seus métodos. Bom, no momento em que
vc está usando JDBC, não é necessário se preocupar com essas coisas, por que
o próprio método getConnection, da classe DriverManager, se encarrega de
"preencher" os nossos métodos de interface. E como o "preenchimento" desses
método depende tão somente do banco de dados para o qual nós vamos criar as
nossas sentenças SQL, isso deve ser avaliado em tempo de execução. O método
getConnection vai buscar na memória o driver JDBC mais adequado para a
conexão que você está fazendo. Talvez algum driver tenha sido carregado
inadequadamente, ou não haja espaço na memória para isso, e o getConnection
deve se virar para encontrar o driver mais adequado, e que funcione. Essa
busca na memória vai revelar ao seu programa como devem ser implementados os
métodos de acesso ao banco de dados, qualquer que seja ele. E seria mais
lógico fazer essa pesquisa no momento em que o programa estivesse
executando.
        Bom, esse "código" que o método getConnection busca deve conter
classes padrão para implementar as interfaces Statement, ResultSet,
PreparedStatement, etc., incluindo nos métodos dessas classes códigos
próprios para o acesso a bancos de dados específicos.
        A título de comparação, algo semelhante ocorre com o AWT: nesse
pacote, temos diversas interfaces, as quais nós podemos sobrecarregar os
métodos que ela disponibiliza, ou não, conforme as necessidades do nosso
programa. A interface WindowAdapter, por exemplo, tem um método chamado
windowClosing, no qual nós especificamos a ação que deve ser executada caso
o evento associado ao pressionamento do botão de fechar (no Windows,
localizado na parte superior direita...) tenha sido ativado. No momento em
que o botão é efetivamente pressionado, um thread da máquina virtual chama
esse método, que logicamente é dependente do sistema operacional, uma vez
que cada sistema tem a sua arquitetura própria de janelas. Quando eu estava
aprendendo AWT, curioso como sempre fui, ficava intrigado em saber como
esses eventos eram processados, até que alguém mais experiente me falou uma
vez como os eventos do sistema eram processados.
         Foram exemplos de escopos diferentes, mas que ilustram bem que pode
haver sempre algo não presumível atuando nos bastidores... :)))


Rosfran Lins Borges
Analista de Sistemas - NDS
[EMAIL PROTECTED]
Fóton® Informática e Serviços
Fone: (61) 328 5060 R.: 204

----- Original Message -----
From: "Leandro Franchi" <[EMAIL PROTECTED]>
To: "Java-List" <[EMAIL PROTECTED]>
Sent: Tuesday, April 23, 2002 3:27 PM
Subject: [java-list] Trabalhando com Interfaces...


> Olá caros amigos do Java-List,
>
>  Estamos com uma dúvida muito cruel, simplesmente não entendemos como
> podemos utilizar uma interface do mesmo modo que utilizamos a interface
> Resultset... por exemplo:
>
> Resultset rs = db.executeQuery("SELECT * FROM FUNCIONARIOS");
>
> while (rs.next())
> System.out.println(rs.getString("NOME"));
>
> rs.close();
>
>   Analisando o código acima, supomos que o rs é um objeto do tipo
Resultset,
> e que next(), getString() e close() são métodos pertencentes ao objeto
> Resultset criado como rs. Porém, Resultset é uma interface, e não uma
> classe, assim, ela não tem corpo dos metodos e sim só as assinaturas
deles,
> e ai vem nossa dúvida... como eles executam ??? Onde estão os corpos dos
> metodos ???
>
>
> Grato
>
> Leandro Franchi
>
>
> ------------------------------ 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