Decode360's Blog

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

            BlogJava :: 首頁 :: 新隨筆 :: 聯系 ::  :: 管理 ::
            397 隨筆 :: 33 文章 :: 29 評論 :: 0 Trackbacks
          <2008年11月>
          2627282930311
          2345678
          9101112131415
          16171819202122
          23242526272829
          30123456

          公告

          話到七分,酒至微醺,筆墨疏宕,言詞婉約,古樸殘破,含蓄醞籍,就是不完而美之最高境界。

          常用鏈接

          留言簿(13)

          隨筆分類(397)

          隨筆檔案(397)

          文章分類(33)

          新聞分類(15)

          收藏夾(74)

          Blog_List

          IT_Web

          My_Link

          最新隨筆

          最新評論

          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 閱讀(205) 評論(0)  編輯  收藏 所屬分類: 04.Java

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


          網站導航:
           
          主站蜘蛛池模板: 延寿县| 宽甸| 峨山| 偃师市| 浦江县| 乳源| 西青区| 闻喜县| 内乡县| 兰州市| 那曲县| 泽库县| 仁布县| 金沙县| 绵竹市| 梅州市| 蕲春县| 成武县| 义乌市| 普兰店市| 睢宁县| 呼和浩特市| 临颍县| 阳东县| 汪清县| 通道| 章丘市| 中宁县| 安徽省| 曲水县| 公主岭市| 黎平县| 通化市| 蕉岭县| 页游| 安远县| 尉氏县| 成都市| 隆子县| 壤塘县| 彝良县|