Java的API(Application Programming Interface)(應用程序接口)是JDK中提供的類,這些類將底層的代碼實現封裝了起來,使用者不需要關心這些類是如何實現的,只需要學習如何使用即可。
在JDK安裝目錄下有個src.zip文件,這個文件解壓縮后里面的內容是所有Java類的源文件。可以在其中查看相對應的類源碼。我們可以通過查幫助文檔的方式來了解Java提供的API如何使用。
Object類 Object類是Java語言中的根類,是所有類的父類,它描述的所有方法子類都可以使用。所有類在創建對象的時候,最終找的父類就是Object。下面介紹Object類中的equals方法與toString方法。
equals方法 用於比較兩個對象是否相同
其實就是使用兩個對象的內存地址在比較。equals方法內部使用的就是==比較運算符。
/*
描述人這個類,並定義功能根據年齡判斷是否是同齡人
由於要根據指定類的屬性進行比較,這時只要覆蓋Object中的equals方法
在方法體中根據類的屬性值進行比較
*/
class Person extends Object{
int age ;
//複寫父類的equals方法,實現自己的比較方式
public boolean equals(Object obj) {
//判斷當前調用equals方法的對象和傳遞進來的對象是否是同一個
if(this == obj){
return true;
}
//判斷傳遞進來的對象是否是Person類型
if(!(obj instanceof Person)){
return false;
}
//將obj向下轉型爲Perosn引用,訪問其屬性
Person p = (Person)obj;
return this.age == p.age;
}
}
注意:在複寫Object中的equals方法時,要注意public boolean equals(Object obj)的參數是Object類型,在調用對象屬性時,一定要進行類型轉換,在轉換之前必須進行類型判斷,
toString方法 返回該對象的字符串表示
該字符串內容就是對象的類型+@+內存地址,在開發中需要按照對象的屬性得到相應的字符串表現形式,因此需要重寫它。
class Person extends Object{
int age ;
//根據Person類的屬性重寫toString方法
public String toString() {
return "Person [age=" + age + "]";
}
}
String類 String類代表字符串。Java中所有字符串字面值都作爲此類的實例實現。
String構造方法 構造方法是用來完成String對象的創建。
String類的方法查找
- 字符串中有多少個字符
- 獲取部分字符串
- 字符串是否以指定字符串開頭和結尾
- 字符串中是否包含另一個字符串
- 將字符串轉成一個字符數組或者字節數組
- 判斷兩個字符串中的內容是否相同
String str = "abcde";
String str2 = "abcde";
String str3 = "hello";
boolean b1 = str.equals(str2);
boolean b2 = str.equals(str3);
- 獲取該字符串對象的內容
字符串緩衝區
StringBuffer類 又稱爲可變字符序列,是一個類似於String的字符串緩衝區,通過某些調用可以改變該序列的長度和內容。
代碼演示:
創建一個字符串緩衝區對象。用於存儲數據。
StringBuffer sb = new StringBuffer();
sb.append("haha"); //添加字符串
sb.insert(2, "it");//在指定位置插入
sb.delete(1, 4);//刪除
sb.replace(1, 4, "cast");//替換指定範圍內的內容
String str = sb.toString();
StringBuilder類 也是字符串緩衝區。StringBuilder是一個可變的字符序列。