学习内容: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操作符判断对象类型、方法重载