基礎知識鞏固三
阿新 • • 發佈:2018-03-09
常量 函數 基礎知識 默認方法 數組 log 可變 系統性能 bst
抽象類和接口:
- 抽象類的構造方法定義為protected,因為它只被子類使用
- 關註點:1、抽象方法不能包含在非抽象類中
- 2、抽象類不能使用new操作符來初始化創建實例對象,但當作為一種數據類型,可以創建一個元素是抽象類型的數組,
- 例如:Abstrac a = new Abstrac[10]
- 3、包含抽象對象的類必須是抽象的
- 4、子類的父類是具體的,這個子類也可以是抽象的
- 5、子類可以覆蓋父類的方法並將它定義為abstract
日歷類:Calendar 它的子類公歷類:GreGorianCalendar()
1 Calendar c = new GregorianCalendar(); 2 3 c.get(Calendar.Year);//獲取年份
1.8之前接口中只包含常量(public final static)和抽象方法(public abstract),1.8之後,接口變得更加靈活,可以有靜態方法(static)和默認方法(default),方法前必須寫關鍵詞static/default
Comparable接口:可比較 其中的方法只有compareTo(Object o)
Cloneable接口是一個特殊請款(zai java.lang包中),這個接口是空的,成為標記接口,表示一個類擁有的某些特定的屬性
- 註:自己定義一個雷來實現Cloneable接口,必須覆蓋Object中的clone()方法,否則會拋出CloneNotSupportedException異常
抽象類和接口的區別
區別 變量 構造方法 方法
抽象類 無限制 有,不能使用new實例化 無限制
接口 必須是常量 無,不能用new實例化 抽象方法必須是公共的實例方法,還可以包含靜態方法和默認方法
native是一個計算機函數,一個Native Method就是一個Java調用非java代碼的接口。
包裝類:
- 包裝類沒有無參構造方法,所有包裝類的實例都是不可變的,這意味它們的內部值就不能再改變
- 每個數值包裝類都有常量MAX_VALUE和MIN_VALUE
- Double.valueOf("12.4"):12.4(double)
- Integer.valueOf("12"): 12(int)
- valueOf和parseDouble方法區別在於,valueOf函數內部就調用了parseDouble方法,只不過它還有個自動裝箱開箱的過程,這會增加系統性能的損耗,一般使用parseDouble
- 每個數值包裝類都有兩個重載的方法,將數值字符串轉換為正確的以十進制為基數的數值
- 例如:
- Integer.parseInt("11",2):3
- Integer.parseInt("12",8):10
- Integer.parseInt("13",10):13
- Integer.parseInt("1A",16):26
- 註意Integer.parseInt("12",2)會報錯,12不是二進制數
基礎知識鞏固三