學習內容:Object類和對象類型轉換
一、Object類
1.Object類是所有類的父類,是Java類層中最高層的類。
2.getClass()方法:返回對象執行時的Class實例,然后用此實例調用getName()方法獲得類名稱。
語法:getClass().getName();
3.toString()方法:將一個對象返回為字符串形式,它會返回一個String實例。在實際應用中通常會重寫此方法。
4.equals()方法
代碼示例:
import javax.sound.midi.Synthesizer;
public class ObjectInstance {
public String toString() {//重寫toString方法
return "在"+getClass().getName()+"類中重寫toString方法";
}
static String s1="123";
static String s2="123";
public static void main(String[] args) {
// TODO 自動生成的方法存根
ObjectInstance t=new ObjectInstance ();
ObjectInstance t2=new ObjectInstance ();
System.out.println(t.toString());
System.out.println(t);//輸出實例對象,自動調用toString方法
System.out.println("字符串s1與s2相同:"+s1.equals(s2));
System.out.println("對象t與t2相同:"+t.equals(t2));
}
}
運算截圖:
二、對象類型轉換
1.向上轉型:將子類對象賦值給父類類型的變量
2.向下轉型:將較為抽象的類轉換為具體的類
代碼示例:
class Father{
public static void draw(Father q) {
System.out.println("父類");
}
}
public class Son extends Father {
public static void draw1(Son q) {
System.out.println("子類");
}
public static void main(String[] args) {
// TODO 自動生成的方法存根
Son q=new Son();
draw(q);//向上轉型
Father p=new Son();
Son p1=(Son)p;
draw1(p1);//向下轉型
}
}
運算截圖:
明天任務:使用instanceof操作符判斷對象類型、方法重載