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

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

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

    隨筆 - 303  文章 - 883  trackbacks - 0
    <2007年2月>
    28293031123
    45678910
    11121314151617
    18192021222324
    25262728123
    45678910

    歡迎光臨! 
    閑聊 QQ:1074961813

    隨筆分類(357)

    我管理的群

    公共blog

    • n維空間
    • Email : java3d@126.com 群 : 12999758

    參與管理的論壇

    好友的blog

    我的其他blog

    朋友的網站

    搜索

    •  

    最新評論

    這是網友給的兩個代碼,如果您對類,接口還不甚明白建議看前面一篇文章;

    本人先指出:書寫Java時可以用extends,implements從interface 和class產生出新類

    問題: +++++++++++++++++++++++++++++++++++++++++++++

    這里的ActionListener為指定父類;

    class ActionListener1 implements ActionListener{}? //創建一個繼承類ActionListener的類ActionListener1


    interface ActionListener1 extends ActionListener{} //創建一個來自類ActionListener的接口ActionListener1

    如果我不創建實例,只想方法重載,是不是都可以用

    ++++++++++++++++++++++++++++++++++++++++++++++++

    很明顯按前面講的extends,implements從interface 和class產生出新類,這兩個辦法都可以

    但這樣講這篇文章實在是太簡單了,雖然有時候,簡單,不錯

    但在這里我看到另一個問題,就是這里的extends,implements
    有何不同

    前面已經把interface 和class
    給大家解釋一番,接下來我們來搞定extends,implements,呵呵

    +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++


    extends,implements分析




    一般說法是:
    類繼承( extends )/ 接口實現( implements)

    一個類繼承了上一個類?? /? 一個接口寬展了N個類的M個接口(類:大寫字母;接口:小寫字母)

    class A?implements B{} / interface a extends A ,B,C... implements b ,c ,d ....{}

    但有個問題要指明:接口 a 將只能被寬展 不能繼續 在 a下創建類,并且很明顯要調用 a 中的方法,將會有一定的局限性,

    因為他沒有被實例化(有點像臨時演員,演完這個節目之后,下個節目要找他來演就很難了),在JAVA中有個專業名詞專門

    形容他---“輕量級”組件。很明顯,演戲(程序),導演(編程人員)不能什么角色都臨時演員,因為要出續集;但有時很

    需要,因為這樣省錢(系統資源)、靈活。

    所以,這些情況要看情況,這就是:好導演,花少錢,排好戲。



    前面,我說了要對extend和implements來個解剖,好了現在問題初步弄清楚就是:重量級(class)和輕量級(interface)

    問題。我們先講到這里,我要了;下面給大家一個關于輕量級組件swing的說明,希望大家看看:

    http://gceclub.sun.com.cn/Java_Docs/html/zh_CN/api/javax/swing/tree/class-use/DefaultMutableTreeNode.html


    然后來個例子:

    JAVA如何利用接口制造類似于C++的多繼承

    作者: daywolf 的 Blog 出處:http://www.csdn.net/

    多繼承其實是不好的東西,但是你有時候卻要用到它,那怎么辦呢?可以利用接口,下面是一個簡單的例子。

    interface CanFly
    {
    ?void fly();
    }

    interface CanSwim
    {
    ?void swim();
    }

    interface CanFight
    {
    ?void fight();
    }

    class ActionCharter
    {
    ?public void fight()
    ?{
    ?System.out.println("I can fight");
    ?}
    }

    class Hero extends ActionCharter implements CanFly,CanSwim,CanFight
    {
    ?public void swim(){
    ?System.out.println("I can swim");
    ?}
    ?
    ?public void fly(){
    ?System.out.println("I can fly");
    ?}?
    }

    public class HelloWorld
    {
    ?public static void u(CanFly i){i.fly();}
    ?public static void v(CanSwim i){i.swim();}
    ?public static void w(CanFight i){i.fight();}
    ?public static void x(ActionCharter i){i.fight();}
    ?
    ?public static void main(String []args)
    ?{
    ?Hero hero = new Hero();
    ?u(hero);
    ?v(hero);
    ?w(hero);
    ?x(hero);
    ?}
    ?
    }

    講解一下,這個例子里面在Hero繼承了一個類ActionCharter來實現接口CanFight的功能,另外兩個接口用方法實現,而在運行的時候采用動態綁定,來進行多態的實現,這個例子很簡單,但是用在實際上卻很有用



    地震讓大伙知道:居安思危,才是生存之道。
    posted on 2007-02-27 08:55 小尋 閱讀(177) 評論(0)  編輯  收藏 所屬分類: j2se/j2ee/j2me
    主站蜘蛛池模板: 黄网站色视频免费看无下截| 成人免费在线视频| 久久国产一片免费观看| 在线观看免费视频一区| 国内精品乱码卡1卡2卡3免费| 日本一道高清不卡免费| 国产亚洲欧洲Aⅴ综合一区| 亚洲蜜芽在线精品一区| 亚洲欧美日韩中文二区| 在线免费播放一级毛片 | 亚洲中文字幕无码爆乳| 精选影视免费在线 | 亚洲中文字幕无码中文字在线| 亚洲va成无码人在线观看| 无套内谢孕妇毛片免费看看| xxxxx免费视频| 青青草国产免费国产是公开 | 中文字幕免费在线看线人动作大片| 免费看黄视频网站| 亚洲熟女精品中文字幕| 四虎影视永久免费观看地址| 中文字幕亚洲色图| 福利免费观看午夜体检区| 亚洲国产一区在线| igao激情在线视频免费| 成年女人午夜毛片免费看| 亚洲JLZZJLZZ少妇| 久久不见久久见中文字幕免费| 亚洲嫩草影院久久精品| 美女视频黄免费亚洲| 免费看一级高潮毛片| 在线观看亚洲一区二区| 成人片黄网站A毛片免费| 免费人成视频在线播放| 亚洲高清日韩精品第一区| 成人片黄网站色大片免费| 久久国产精品免费一区二区三区| 亚洲欧洲精品一区二区三区| 美女的胸又黄又www网站免费| 亚洲午夜国产精品无码老牛影视| 特级av毛片免费观看|