奇怪 好奇怪 好好奇怪 特别奇怪啊
前几天刚把JAVA的基本语法看完,今天看到了SERVLET 痛苦 伤心 难过啊 JAVA的知识真的纷繁而多杂
今天遇见一个问题 关于借口的产生对象
protected void service(HttpServletRequest req,
HttpServletResponse resp) throws ServletException,
java.io.IOException
我们需要写的一个函数,可奇怪的是在查看文档时发现HttpServletRequest HttpServletResponse 全是接口,借口怎么能产生对象呢?很奇怪的事情,在BAIDU搜也没有什么具体的内容有的说是默认产生对子类对象的引用在群里问也无果
后来看到文档上说:Receives standard HTTP requests from the public service
method and dispatches them to the do
XXX methods defined in this class. This method is an HTTP-specific version of the Servlet.service(javax.servlet.ServletRequest, javax.servlet.ServletResponse)
method. There's no need to override this method.
又有个高手告诉我是容器做的工作
后来又看到一句代码
Enumeration e=getInitParameterNames();其中Enumeration也是一个接口INTERFACE 于是更加奇怪了,如果说上边的是容器默认做出的一些事情,那这个简直就是赤裸裸的践踏JAVA编程规则嘛@ 于是不停的查看几个相关类的文档,.无果
后来突然想到 孙鑫在JAVA无难事里说的把子类对象赋给父类的例子,于是思考 把焦点放在赋值的等号的右边,右边是一个可以返回一个实现左边借口类型的对象,于是编写了一个简单的测试代码
abstract interface aaa
{
public abstract void paint();
}
public class test implements aaa
{
public void paint()
{
System.out.println("object test is execute!!");
}
public test getInterface()//返回一个TEST对象,即一个实现了AA接口的对象
{ test aa=new test();
return aa;
}
public static void main(String[] args)
{ test b=new test();
aaa e=b.getInterface();
e.paint();
}
}
运行结果是:OBJECT TEST IS EXECUTE!
可以看出实际上定义的是一个TEST的对象,因为调用的是实现类的PAINT函数,而把得到的一个TEST对象的引用传给E 实际上产生了一个TEST对象,已经被默认的转换了
菜鸟我,也不知道对不对 有老大给些建议和意见啊 崩溃啊
顺便问下有没有SERVLET的一个好的视频啊
THANKS
ps:刚刚看到这么一句话,有些借口的实现类是由SERVLET引擎提供的,估计用上边的原理没法解释的都能用这句话来糊弄过去
分享到:
相关推荐
django_接口自框架,简单开发,自己摸索成才django_接口自框架django_接口自框架
最近项目需要写web接口对外客户端提供服务,百度了很多发现没有比较实用的,自己摸索了半天终于写出来了,不容易,自己做了一个记录,大神勿喷。 我自己理解的接口就是客户端通过访问服务器获取数据。 我这里是用...
莲匸AI网站系统源码仅21kb,实现用户管理,一键添加接口,一键修改接口,在线ai5个模型聊天,文转图,...然后剩下的你们自己摸索 注意:请您把没一个页面文件打开仔细阅读批注并修改,最好不要用我的接口把我流量刷爆了
淘宝网收费模式分析 淘宝网运营模式分析 淘宝网盈利模式分析
本接口只需替换4个参数值即可使用,无需其它改动; 需替换参数在短信发送 check_code.asp 页面代码中; 本接口短信发送页面代码全部采用 ASP 语句编写,方便...经过研究摸索后,终于写出了一个ASP版的腾讯云短信接口。
利用Jacob调用AutoCAD接口绘图,实现绘制图形,不是调用Windows绘制图形界面,是真正的调用AutoCAD绘图,只是给了测试代码,具体功能自己摸索
压缩文件中有详细的方法和代码模板,注册服务的代码在一个单独的文件中,你自己的接口程序代码在一个单独的文件中,外部库比如occi在一个单独的文件中,其次是UAPI 静态连接中使用的库单独一个文件。 你只需要把自己...
如果想生成未预置的代码,如vo对象、前端vue页面以及其他自定义代码等,需要做一些定制和扩展来实现。 从使用角度而言,官方资料介绍得比较简要,要实际使用,仍然需要进行具体的尝试和摸索,包括必要时看下源码...
摸索C语言的方法.pdf
关于创新能力的摸索心得.docx
国有企业改革摸索中前行.docx
小学语文近义词摸索的近义词
我国电子信息创新摸索探究.pdf
2021关于创新能力的摸索心得.docx
锅炉低负荷稳燃能力摸索.doc
鲜花电商破局之路尚在摸索
Java是一种高性能、跨平台的面向对象编程语言。它由Sun Microsystems(现在是Oracle Corporation)的James Gosling等人在1995年推出,被设计为一种简单、健壮、可移植、多线程、动态的语言。Java的主要特点和优势...
鲜花电商破局之路尚在摸索.pdf
FT4232是一款USB转4串口芯片,该芯片功能强大,应用方便,还可以将IO配置为I...本教程是讲述如何将FT4232芯片的某个特定串口设置为RS485接口输出教程,手把手教你将FT4232设置为485接口,简单明了,省去后来人摸索的时间
体育信息化教学改革的摸索与实践.docx