`
nickdine
  • 浏览: 45797 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
社区版块
存档分类
最新评论

摸索 接口能产生对象吗

阅读更多

奇怪 好奇怪  好好奇怪  特别奇怪啊

前几天刚把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 doXXX 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引擎提供的,估计用上边的原理没法解释的都能用这句话来糊弄过去

分享到:
评论

相关推荐

    农业银行接口Java-Demo-V3.1.6

    农业银行接口Java-Demo-V3.1.6是一款专门针对开发者设计的支付接口示例代码,主要用于帮助开发者理解和实现与农业银行的...同时,随着版本的更新,开发者也能及时掌握接口的最新变化,保持系统的兼容性和稳定性。

    ArcEngine10.2接口关系图

    同时,理解接口关系图能提高开发效率,避免不必要的摸索和错误。 在实际开发中,我们可能会遇到接口版本的问题。Esri在每个新版本中都会对接口进行优化或增加新的功能,因此,理解当前使用的ArcEngine版本(这里是...

    互亿无线触发接口

    开发者可以通过DEMO快速学习和验证接口功能,减少开发过程中的摸索时间。 总的来说,互亿无线触发接口是为开发者提供的一个强大工具,通过详细的开发文档和DEMO,可以帮助开发者快速集成并充分利用其服务,从而提高...

    django_接口自动化框架的开发t.tar

    django_接口自框架,简单开发,自己摸索成才django_接口自框架django_接口自框架

    java头像上传接口

    最近项目需要写web接口对外客户端提供服务,百度了很多发现没有比较实用的,自己摸索了半天终于写出来了,不容易,自己做了一个记录,大神勿喷。 我自己理解的接口就是客户端通过访问服务器获取数据。 我这里是用...

    莲匸AI网站系统PHP源码 openai接口

    莲匸AI网站系统源码仅21kb,实现用户管理,一键添加接口,一键修改接口,在线ai5个模型聊天,文转图,...然后剩下的你们自己摸索 注意:请您把没一个页面文件打开仔细阅读批注并修改,最好不要用我的接口把我流量刷爆了

    支付宝接口官方demo

    支付宝接口是支付宝为...通过分析和运行DEMO,开发者可以快速掌握接口的使用方法,减少开发中的摸索时间,提高效率。在实际项目中,根据DEMO进行二次开发,结合业务需求进行定制,可以构建出安全、稳定的支付系统。

    ASP版 腾讯云短信接口 发送代码

    本接口只需替换4个参数值即可使用,无需其它改动; 需替换参数在短信发送 check_code.asp 页面代码中; 本接口短信发送页面代码全部采用 ASP 语句编写,方便...经过研究摸索后,终于写出了一个ASP版的腾讯云短信接口。

    java调用AutoCAD接口绘图工具类

    利用Jacob调用AutoCAD接口绘图,实现绘制图形,不是调用Windows绘制图形界面,是真正的调用AutoCAD绘图,只是给了测试代码,具体功能自己摸索

    不知道怎么用 自行摸索 没有教程

    自行摸索

    C++实现完整的接口注册windows服务程序

    压缩文件中有详细的方法和代码模板,注册服务的代码在一个单独的文件中,你自己的接口程序代码在一个单独的文件中,外部库比如occi在一个单独的文件中,其次是UAPI 静态连接中使用的库单独一个文件。 你只需要把自己...

    基于FPGA的PCIe总线接口的DMA传输设计.pdf

    基于FPGA的PCIe总线接口的DMA传输设计涉及了在FPGA上实现高速数据通信的关键技术和方法。在详细展开知识点之前,我们先来...这项技术的成功实现不仅要求设计者有扎实的理论基础,还需要他们在实践中不断摸索和创新。

    小学语文近义词摸索的近义词

    本文将深入探讨“摸索”的近义词——“探索”与“探求”,并分析它们之间的异同。 首先,“摸索”一词,常用于描述在未知或不明确的环境中寻找方向或方法的过程。例如,在黑暗中摸索前进,意味着在缺乏光线的情况下...

    摸索C语言的方法.pdf

    教师应该激发学生的兴趣,使学生对C语言产生强烈的求知欲。文章中提出,教师在第一堂课上不必急于传授知识,而是应该注重建立与学生的良好关系,通过仪表、态度和关爱来吸引学生,使其愿意倾听和学习。 再者,为了...

    商家支付宝接口文档及其代码实例实物标准代码实例net05_gbk(aspx)post .net(GBK)(2.0)实物标准代码实例

    7. **常见错误问题搜集FAQ**:这个PDF文件可能是收集了商家在集成过程中常遇到的问题及其解决方案,对于开发者来说,这是一个宝贵的参考资料,可以避免重复摸索,节省开发时间。 8. **实物交易服务接口**:实物交易...

    摸索GIMPGrokking the GIMP

    在探讨《摸索GIMPGrokking the GIMP》这一教材时,我们首先需要明确的是,该书主要聚焦于介绍GIMP这款开源图像编辑软件的基本使用方法及其强大的功能特性。本书不仅适合初学者入门,同时也为高级用户提供了一系列...

    浅析JSP的9大内置对象和4大作用域对象

    JSP(Java Server Pages)是一种用于开发动态Web页面的技术,是Java EE平台的一部分。在JSP页面中,开发者可以使用Java代码来控制页面内容的生成...开发者应当在实践中不断摸索和总结经验,以便更加高效地利用JSP技术。

    国有企业改革摸索中前行.docx

    国有企业改革摸索中前行.docx

    设计模式精解——GoF23中设计模式解析

    ### 设计模式精解——GoF23中设计模式...正如文中所述,设计模式的学习不仅仅是知识的积累,更是对面向对象设计思想的领悟,只有在实践中不断摸索和总结,才能真正掌握设计模式的精髓,进而提升软件开发的质量和效率。

Global site tag (gtag.js) - Google Analytics