<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    摸索 接口能產生對象嗎

    Posted on 2007-09-29 11:23 古典哈尼 閱讀(448) 評論(2)  編輯  收藏 所屬分類: 好文章

    奇怪 好奇怪  好好奇怪  特別奇怪啊

    前幾天剛把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引擎提供的,估計用上邊的原理沒法解釋的都能用這句話來糊弄過去

    Feedback

    # re: 摸索 接口能產生對象嗎  回復  更多評論   

    2007-09-29 19:02 by Unmi
    這就是面向接口的編程,如果你再細心一點,可以發現每個接口在運行時都對應一個具體實現類,像Servlet的接口都是由Servlet容器實現的,一般對應的類名 xxxImpl或 xxxWraper

    # re: 摸索 接口能產生對象嗎[未登錄]  回復  更多評論   

    2007-09-30 08:16 by 古典哈尼
    有這幾個類,這些就是引擎實現的類?

    只有注冊用戶登錄后才能發表評論。


    網站導航:
     
    主站蜘蛛池模板: 久久精品毛片免费观看| 免费无码午夜福利片69| 无码囯产精品一区二区免费 | 一区二区3区免费视频| 免费jjzz在线播放国产| 亚洲AV成人一区二区三区观看| 成人免费看黄20分钟| 亚洲熟妇无码AV不卡在线播放| 久久精品免费一区二区喷潮| 久久国产乱子伦精品免费看| 久久亚洲私人国产精品| 狼群影院在线观看免费观看直播 | 亚洲黄色免费观看| 亚洲国产美女视频| 在线免费一区二区| 四虎影视久久久免费观看| 国产亚洲精品精品国产亚洲综合| 青青操视频在线免费观看| 亚洲国产日韩一区高清在线| 性短视频在线观看免费不卡流畅| 亚洲 日韩 色 图网站| 国产片免费在线观看| 久久久免费观成人影院| 久久精品国产亚洲AV无码娇色| 91九色精品国产免费| 亚洲日本VA午夜在线电影| 亚洲精品专区在线观看| 外国成人网在线观看免费视频| 久久精品国产亚洲AV忘忧草18| 日本免费人成黄页在线观看视频| 国产精品免费久久| 亚洲免费黄色网址| 亚洲成av人在片观看| 免费看又黄又无码的网站| 亚洲变态另类一区二区三区 | 国产99久久久国产精免费| 亚洲香蕉免费有线视频| 国产大片线上免费看| 三年片在线观看免费观看大全一| 亚洲日韩AV无码一区二区三区人| 亚洲精品亚洲人成在线观看下载|