Quando carrega o driver com Class.forName vc carrega o driver do seu dbms. Este driver é uma implementação da java.sql.Driver, por exemplo OracleDriver, porém quando pede um connection ele devolve uma implementação da java.sql.Connection, ficando com oracle seria OracleConnection. Executando um query nest connection devolve um OracleResultSet, que implementa a interface java.sql.ResultSet. A interface simplesmente indica quais os methodos a classe deve implementar.
enta ler um pouco sobre polimorfismo. Leandro Franchi wrote: >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] -------------------------------------------------------------------------