我有一个很难理解的线是否为PrintWriter实现HttpServletResponse的
PrintWriter out = response.getWriter()
建设的语义首先,我注意到,HttpServletResponse的是一个接口,但没有方法的getWriter。
那么如何response.getWriter()
甚至可能?或者更好的是,如何调用一个方法的接口变量? 除此之外,PrintWriter是否实现了HTTPServletResponse?
我翻看了Java的实现,它似乎不是;那么它是如何分配的response.getWriter()
?
感谢
HTTPServletResponse从ServletResponse继承了getWriter()方法(通过扩展此接口)。理解这段代码的关键是容器将HTTPServletResponse的实例(即实现该接口的某个类)传递给servlet。 –
我试图用我自己的方法重新创建这个功能,但在参数部分不断得到NullPointer异常。什么样的实例被传递给HTTPServletResponse?那个类如何与接口和PrintWriter类相关联? – dido