Java中对象类型的强制转换

Posted javaahb

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Java中对象类型的强制转换相关的知识,希望对你有一定的参考价值。

Java中对象类型的强制转换

class person
{
 void f1()
 {
  System.out.println("person f1 is calling !");
 }
 void f2()
 {
  f1();
 }
}
 

class student  extends person
{
 void f1()
 {
  System.out.println("student f1 is calling! ");
 }
 void f3()
 {
  System.out.println("student f3 is calling!");
 }
 void f4()
 {}
}


class Rt20
{
public static void main(String[]args)
 {
  student s=new student();
  call(s);
 }
 public static void call(person p)//子类的对象可以自动转换为父类的对象.
 {
  if(p instanceof student)//这句意思:p确实是student的对象吗.
  {
  student s=(student)p;//把person类型强制转换为student类型.
  s.f1();
  s.f2();
  s.f3(); 
  }http://www.guiyang365.com/
  else
  {
  p.f1();
  p.f2();
  }http://www.guiyang365.com
  //p.f4();//p只能调用person类的内容,虽然说p来源于student .但是它带上person类的
  //帽子,所以只能调用person类的成员.
 }
}

 

 

以上是关于Java中对象类型的强制转换的主要内容,如果未能解决你的问题,请参考以下文章

java中的强制类型转换

Java中对象类型的强制转换

关于java中任意对象强制转换为接口类型的问题

Java_基础Java中强制类型转换

java强制类型转换

Java中的强制类型转换是如何转换的?