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

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

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

    Decode360's Blog

    業精于勤而荒于嬉 QQ:150355677 MSN:decode360@hotmail.com

      BlogJava :: 首頁 :: 新隨筆 :: 聯系 ::  :: 管理 ::
      397 隨筆 :: 33 文章 :: 29 評論 :: 0 Trackbacks
    Java特性隨便看看(多態)
    ?
    一、引用類型
    ?
    ??? 1、Java的數據類型
    ?
    ????? Java有8種基本數據類型:
    ?
    ????? 4種常用的:boolean、char、double、int
    ????? 另外的4種:byte、float、long、short
    ?
    ????? 對于基本類型是直接留出內存保存值,而其他所有的數據類型都是引用類型。
    ?
    ????? 所謂引用類型,即開始創建時只保存了它對某類型的引用。必須初始化之后才可以引用
    ?
    ??? 2、引用類型的相等性
    ?
    ????? 舉例說明:
    ?
    ????? Dog dog1 = new Dog()
    ????? Dog dog2 = Dog1
    ????? Dog dog3 = new Dog()
    ?
    ????? dog1 == dog2 正確
    ????? dog2 == dog3 錯誤
    ?
    ????? 一般會創建equals()方法,然后通過dog2.equals(dog3)來對比每一個值是否相同
    ?
    ??? 3、equals()方法
    ?
    ????? public boolean equals(Object that){
    ??????? if (this == that){
    ???????? return true;
    ??????? }
    ??????? if (that == null){
    ???????? reture false;
    ??????? }
    ??????? if (getClass() != that.getClass()){
    ???????? return false;
    ??????? }
    ??????? Die thatDie = (Die)that;
    ??????? return topFace == thatDie.topFace;
    ????? }
    ?
    ????? 注:1、首先把實例this==that的直接返回,不用再進去比較多個值
    ????????? 2、that=null時直接返回,不要去嘗試追隨null
    ????????? 3、比較類名,若不是同一各類就直接返回false
    ?
    ?
    二、多態
    ?
    ??? 1、多態類型對象:
    ?
    ??? Object it;
    ??? it = new Dog();
    ??? it = new double[10];
    ?
    ??? 以上代碼都是正確的,Object類型的變量可以保存一個指向廣泛事物的引用。
    ??? Object是一個典型的多態類型(polymorphic type)
    ?
    ??? 2、基本類型包裝器
    ?
    ??? Object可以保存任何對象和數組,但是不能保存基本類型,所以需要包裝器類。
    ??? 針對8個基本類型的包裝器分別為:
    ?
    ??? Boolean、Byte、Character、Double、Float、Integer、Long、Short
    ?
    ??? 理論上需要用以下方法進行轉換:
    ?
    ??? Object k = new Integer(23);
    ??? int n = ((Integer)k).intValue();
    ?
    ??? 但是在1.5版本以后,可以直接省略為:
    ?
    ??? Object k = 5;
    ??? int n = (Integer)number;
    ?
    ?
    三、數組
    ?
    ??? 1、數組的創建步驟
    ?
    ????? ① 聲明變量:int[] nums;
    ????? ② 分配空間:nums = new int[4];
    ????? ③ 初始化:int[0] = 1;
    ?
    ????? int[] nums = new int[]{0,1,2,3,4}
    ?
    ??? 2、多維數組
    ?
    ????? int[][] rows;
    ????? rows = new int[2][3];
    ?
    ????? 上例是由3個“含有4個值的數組”組成的數組,也可以理解為3行4列
    ?
    ????? 要取單獨一行:int[] middleRow = row[1];
    ????? 要單獨取一列:row[0] = new int[4];
    ?
    ?
    四、接口
    ?
    ??? 接口跟類是很相似的,區別在于接口即沒有字段也沒有方法體,只指明了類的行為方式。接口的作用簡單一點就是:接口是用來標記類的,不同的類屬于不同的接口(通過向上轉型),管理接口比管理各種各樣的類方便多了,接口體現了抽象的觀點,什么是抽象?抽象就是“抽去像的部分”。
    ?
    ??? 實現接口:
    ?
    ??? public class FieldDomino implements Domino{
    ??? ...
    ??? }

    ?
    五、重載
    ?
    ??? 接口、Object類型、數組類型,都是多態類型。
    ?
    ??? 不同種類的多態性就是重載 ,即同名的方法,而傳入參數個數或種類不同
    ?
    ??? 不能重載某個類型包含的另一個類型參數,這樣輸入某個參數,兩種都成立。
    ?
    ??? 重載的作用在于可以減少我們必須記住的方法名稱的數量!
    ?
    ?
    ?
    posted on 2008-11-22 21:51 decode360 閱讀(200) 評論(0)  編輯  收藏 所屬分類: 04.Java

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


    網站導航:
     
    主站蜘蛛池模板: 任你躁在线精品免费| 一区二区三区免费在线视频 | 亚洲精品午夜国产VA久久成人| 国产精品亚洲一区二区在线观看| 国产三级在线观看免费| 亚洲色大成网站www| 免费国产黄线在线观看| 亚洲国产日韩精品| 免费鲁丝片一级在线观看| 亚洲精品无码久久久久A片苍井空| 毛片免费全部播放一级| 人人狠狠综合久久亚洲| 亚洲国产aⅴ综合网| 免费精品久久天干天干| 亚洲视频手机在线| 黑人粗长大战亚洲女2021国产精品成人免费视频 | 最近中文字幕电影大全免费版| 亚洲首页在线观看| 免费a级毛片无码a∨蜜芽试看| 亚洲免费网站观看视频| 亚洲色偷偷狠狠综合网| 无码A级毛片免费视频内谢| 亚洲Av高清一区二区三区| 国产精品免费一级在线观看| 亚洲精品偷拍视频免费观看| 亚洲高清视频在线观看| 久久WWW免费人成人片| 一个人看的免费观看日本视频www 一个人看的免费视频www在线高清动漫 | 两个人看的www免费| 亚洲男女性高爱潮网站| 国产精品免费小视频| 今天免费中文字幕视频| 丁香婷婷亚洲六月综合色| 亚洲狠狠爱综合影院婷婷| 1区2区3区产品乱码免费| 国产成人亚洲综合无| 亚洲精品在线观看视频| 国产成人免费福利网站| 美丽姑娘免费观看在线观看中文版| 亚洲日产乱码一二三区别| 亚洲国产精品无码一线岛国|