Interfaces?

Para que uma interface execute uma determinada função ela dever ser implementada em uma classe. Na API javax.servlet temos várias interfaces: ServletRequest, ServletResponse, RequestDispatcher, entre outras.
No código:

1 …
2 …
3 RequestDispatcher rd;
4 rd = request.getRequestDispatcher(“Teste.jsp”);
5 rd.forward(req, res);
6 …

Na linha 5, como que o método forward() funciona se eu estou lidando com uma referência de interface, ou seja, que não tem métodos implementados?

Agradeço antecipadamente a atenção.

Roberto

Ola,

De uma olhada aqui no:

Tutorial sobre Interfaces

[]'s

No meu entendimento, parece-me que ainda existe uma contradição, pois mesmo entendendo que uma interface possa ser referenciada, como é que eu executo um método dessa interface se ele não foi implementado.

OBS: Pelo que eu conheço da API javax.servlet não existe uma implementação padrão para as interfaces RequestDispatcher, HttpServletRequest, HttpServletResponse, e outras mais.

Certeza ???

De uma olhada por exemplo em

javax.servlet.http.HttpServletRequestWrapper
javax.servlet.http.HttpServletResponseWrapper

e

javax.servlet.http.HttpServlet
Agora olhe o método: getServletContext()

Ai estão suas implementações.

[]'s

Roberto, sua msg está no fórum errado.

Vc obviamente não sabe o básico de Java. Nem de Orientação a Objetos. Que tel ler alguma documentação, hein??

Quando vc pede um requestDispatcher, na verdade vc está recebendo uma implementação dele. A idéia de uma interface é vc justamente não querer saber qual é a implementação, desde que ela contenha os métodos que você precisa.

Quando vc faz um Servlet, vc implementa HttpServlet, certo?? Isso é pro tomcat poder usar a sua classe sem conhecer o código dela de antemão. Ele sabe que vc vai ter um método assim:

public void service(HttpServletRequest, HttpServletResponse);

Pra ele não interessa a implementação, desde que ele seja capaz de chamar o seu método.

[]s, Tiago.
P.S.: desculpem, hj eu tô estúpido.

:smiley: Valeu Marco.

Valeu Tiago.

PS: Tiago, você tem razão. É muito mais fácil jogar as perguntas no fórum. O problema da documentação é que elas tem tudo; basta procurar. No entanto, não fosse essa “preguiça”, todos nós encontraríamos todas as soluções. Seria apenas uma questão de tempo. E nesse caso, para que precisaríamos nós de fóruns?