面试_java_对象的转型

100 阅读1分钟

对象的转型

  • 父类引用指向子类对象,这个过程叫做对象的 向上转型,属于自动类型转换。(子类可以自动转为父类)

  • 向上转型后的父类引用变量只能调用它编译类型的方法,不能调用它运行时类型的方法。解决的办法就是 向下转型,属于强制类型转换。(父类只能强制性转为子类)


Object obj = new String("Hello");
obj.charAt(0)      // 会报红出错,因为编译器认为obj是Object类型,而charAt是String类型的运行时方法

String str = (String) obj;    // 强制转型(向下转型)

System.out.println(str.charAt(0));    // 输出:H
System.out.println(obj == str);       // 输出:true