steinqiao  
          日歷
          <2011年11月>
          303112345
          6789101112
          13141516171819
          20212223242526
          27282930123
          45678910
          統計
          • 隨筆 - 8
          • 文章 - 0
          • 評論 - 1
          • 引用 - 0

          導航

          常用鏈接

          留言簿

          隨筆檔案

          搜索

          •  

          最新評論

          閱讀排行榜

          評論排行榜

           

           

           

           

          Java SE Lesson 3

           

          1.   接口中所聲明的方法都是抽象方法。接口中的方法都是 public 的。

          2.   接口中也可以定義成員變量。接口中的成員變量都是 publicfinalstatic 的。

          3.   一個類不能既是 final,又是 abstract 的。因為 abstract 的主要目的是定義一種約定,

          讓子類去實現這種約定,而 final 表示該類不能被繼承,這樣 abstract 希望該類可以

          被繼承而 final 明確說明該類不能被繼承,兩者矛盾。因此一個類不能既是 final 的,

          又是 abstract 的。

          4.   Design Pattern(設計模式)。單例模式(Singleton):表示一個類只會生成唯一的一

          個對象。

          5.   包(package)。用于將完成不同功能的類分門別類,放在不同的目錄(包)下。包

          的命名規則:將公司域名反轉作為包名www.shengsiyuan.comcom.shengsiyuan(包

          名),對于包名:每個字母都需要小寫。如果定義類的時候沒有使用 package,那么

          Java 就認為我們所定義的類位于默認包里面(default package)。

          6.   編譯帶有 package 聲明的 Java 源文件有兩種方式:

          a)   直接編譯,然后根據類中所定義的包名,逐一手工建立目錄結構,最后將生成的 class

          文件放到該目錄結構中(很少使用,比較麻煩)。

          b) 使用編譯參數 –d,方式為 javac –d . 源文件.java,這樣在編譯后,編譯器會自動幫

          助我們建立好包所對應的目錄結構。

          7.   有兩個包名,分別是 aa.bb.cc aa.bb.cc.dd,那么我們稱后者為前者的子包。

          8.   導入(import),將使用 package 分離的各個類導入回來,讓編譯器能夠找到所需要

          的類。

          9.   import 的語法:import   com.shengsiyuan.PackageTest;

          10. import com.shengsiyuan.*,表示導入 com.shengsiyuan 包下面的所有類。

          11. import aa.bb.*并不會導入 aa.bb.cc 包下面的類。這時需要這樣寫:

          import aa.bb.*;

          import aa.bb.cc.*;

          12. 關于 packageimportclass 的順序問題:

          a)   首先需要定義包(package),可選

          b) 接下來使用 import 進行導入,可選

          c)   然后才是 class interface 的定義。

          13. 如果兩個類在同一個包下面,那么則不需要導入,直接使用即可。

          14. 訪問修飾符(access modifier)。

          2     protected(受保護的):被 protected 所修飾的屬性和方法可以在類內部、相同包

          以及該類的子類所訪問。

          3     private(私有的):被 private 所修飾的屬性和方法只能在該類內部使用

          4     默認的(不加任何訪問修飾符):在類內部以及相同包下面的類所使用。

          15.   instanceof 判斷某個對象是否是某個類的實例。語法形式:引用名 instanceof 

          名(接口名),返回一個 boolean 值。

          16. People people = new Man();

          17. System.out.println(people instanceof People); //結果為 true,因為 Man People 的子

          類,根據繼承,子類就是父類,因此 Man 也可以看作是 People 的實例。

          18. 相等性的比較(==


           

           

           

          1     對于原生數據類型來說,比較的是左右兩邊的值是否相等。

          2     對于引用類型來說,比較左右兩邊的引用是否指向同一個對象,或者說左右兩

          邊的引用地址是否相同。

          19.   java.lang.Object 類。java.lang 包在使用的時候無需顯式導入,編譯時由編譯器自動

          幫助我們導入。

          20. API Application Programming Interface),應用編程接口。

          21. 當打印引用時,實際上會打印出引用所指對象的 toString()方法的返回值,因為每個

          類都直接或間接地繼承自 Object,而 Object 類中定義了 toString(),因此每個類都有

          toString()這個方法。

          22. 關于進制的表示:16 進制,逢 16 進一,16 進制的數字包括:09A,B,C,D,E,F

          23. equals()方法,該方法定義在 Object 類當中,因此 Java 中的每個類都具有該方法,

          對于 Object 類的 equals()方法來說,它是判斷調用 equals()方法的引用與傳進來的引

          用是否一致,即這兩個引用是否指向的是同一個對象。對于 Object 類的 equals()

          法來說,它等價于==

          24. 對于 String 類的 equals()方法來說,它是判斷當前字符串與傳進來的字符串的內容

          是否一致。

          25. 對于 String 對象的相等性判斷來說,請使用 equals()方法,而不要使用==

          26. String 是常量,其對象一旦創建完畢就無法改變。當使用+拼接字符串時,會生成新

          String 對象,而不是向原有的 String 對象追加內容。

          27. String Pool(字符串池)

          28. String s = “aaa”;(采用字面值方式賦值)

          1)   查找 String Pool 中是否存在“aaa”這個對象,如果不存在,則在 String Pool 中創建

          一個“aaa”對象,然后將 String Pool 中的這個“aaa”對象的地址返回來,賦給引

          用變量 s,這樣 s 會指向 String Pool 中的這個“aaa”字符串對象

          2)   如果存在,則不創建任何對象,直接將 String Pool 中的這個“aaa”對象地址返回來,

          賦給 s 引用。

          29. String s = new String(“aaa”);

          1)   首先在 String Pool 中查找有沒有“aaa”這個字符串對象,如果有,則不在 String Pool

          中再去創建“aaa”這個對象了,直接在堆中(heap)中創建一個“aaa”字符串對

          象,然后將堆中的這個“aaa”對象的地址返回來,賦給 s 引用,導致 s 指向了堆中

          創建的這個“aaa”字符串對象。

          2)    如果沒有,則首先在 String Pool 中創建一個“aaa“對象,然后再在堆中(heap)創

          建一個”aaa“對象,然后將堆中的這個”aaa“對象的地址返回來,賦給引用,

          導致 s 指向了堆中所創建的這個”aaa“對象。

          posted on 2011-11-24 17:42 斯坦 閱讀(125) 評論(0)  編輯  收藏

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


          網站導航:
           
           
          Copyright © 斯坦 Powered by: 博客園 模板提供:滬江博客
          主站蜘蛛池模板: 资中县| 富平县| 大邑县| 英山县| 富锦市| 东宁县| 乃东县| 诏安县| 开原市| 出国| 若尔盖县| 沅陵县| 进贤县| 临城县| 鹿邑县| 容城县| 七台河市| 北流市| 安图县| 内黄县| 佛冈县| 德阳市| 襄樊市| 驻马店市| 政和县| 资溪县| 奉贤区| 扎兰屯市| 北京市| 军事| 山阳县| 马尔康县| 咸宁市| 西城区| 双桥区| 凉山| 潮州市| 都兰县| 福州市| 南郑县| 保德县|