SL-275(六):類設計
1。四種訪問控制符
public?? protected??? default???? private
2。方法覆蓋
注意:覆蓋方法的可訪問性不能比其要覆蓋的方法弱。
3。super關鍵字的用法:
eg:
class B extends A{
??????super.println();
??????public void println(){}
}
class A{
public void println(){}}
(new B()).println;//此句話會調用super.println(),這個時候調用這個方法的對象是new B()對象。
4。instanceof運算符
5。對象類型轉換
#? 始終允許類層次中向上轉換,事實上,這種轉換不需要轉換運算符。可以由簡單的賦值完成。
eg:class B extends A
轉換示例:A a=new B();// 將類B轉換成類A;如果這樣轉換將產生錯誤:B b=new A();
#對于向下轉換,編譯器要求轉換至少必須是可能的。
#如果編譯器允許轉換,則在運行時檢查對象類型。
6。構造器
子類從父類可以繼承所有的變量和方法,但它不能繼承構造器。
調用構造器時,總是先遞歸調用父類的構造器。
在構造器中使用super和this關鍵字時,必須放在構造器的第一行。
7。Object類的幾個方法
注:如果覆蓋Object的equals方法,都應該覆蓋hashCode方法來保證相同對象的hashCode值相同。
8.Wrapper類
8種基本類型對應8種包裝類
J2SE5.0的自動裝箱基本類型:
eg:
int pInt=420;
Integer wInt=pInt;//不需要使用這樣的語句:Integer wInt=new Integer(pInt);
intp2=wInt;
9。varargs
eg:public void sum(int...nums)<===>public void sum(int[] nums)
?
scjp:
1)子類不能繼承父類的構造器
2)構造器中調用this和super語句,則必須放在構造器中的第一句
posted on 2006-10-03 16:35 小雨不打傘 閱讀(319) 評論(0) 編輯 收藏 所屬分類: SL-275學習筆記