HttpServlet是一个抽象类 我们在写Servlet的时候继承HttpServlet 而在类中却只重写了doget 和dopost方法

抽象类的派生类要想是实体类必须实现父类的全部抽象方法吧求高人指点不懂别捣乱谢谢... 抽象类的派生类要想是实体类必须实现父类的全部抽象方法吧 求高人指点 不懂别捣乱 谢谢 展开
 我来答
198901245631
推荐于2016-08-23 · TA获得超过3.5万个赞
知道大有可为答主
回答量:9037
采纳率:92%
帮助的人:1706万
展开全部

HttpServlet里面没有抽象方法的,也就是说Servlet中已经继承过来所有的方法了,只不过是“空”;

解释:doGet和doPost方法在HttpServlet中都是有实现的,并不是抽象方法,所以也是没有限制的。

HttpServlet中doGet方法源码:

protected void doGet(HttpServletRequest req, HttpServletResponse resp)

    throws ServletException, IOException

  {

    String protocol = req.getProtocol();

    String msg = lStrings.getString("http.method_get_not_supported");

    if (protocol.endsWith("1.1"))

      resp.sendError(405, msg);

    else

      resp.sendError(400, msg);

  }

yinruisi4
推荐于2017-12-16 · TA获得超过594个赞
知道小有建树答主
回答量:277
采纳率:100%
帮助的人:239万
展开全部
如果派生类不是抽象类的话就必须实现全部的方法,如果派生类本身就是抽象类则没有这个限制。实现接口的时候也一样,抽象类可以不实现全部的方法。
Servlet,重写service方法比较好,能同时处理get和post请求。如果只写了doget,那JSP页面传过来的post请求的话则不能处理,会报405错误。反过来一样
更多追问追答
追问
我的意思是HttpServlet是一个抽象类 我们写的Servlet类是一个实体类并继承HttpServlet 那么它应该实现HttpServlet的所有抽象方法 对于我在程序中看到的只重写doGet 和 doPost方法感到有些疑问 请指点
追答
HttpServlet类只是被定义为抽象类,但是源码里面没有抽象方法。所以没有一定要求实现的方法。之所以定义为抽象类,是因为他继承了GenericServlet这个抽象类。并没有全部实现里面的方法
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式