object和对象转型的问题,解答一下咯

img


object类,他不是所有的类型都包括,那为什么还需要用对象的转型?就是说哪位大佬能说一下,object和这个对象转型内之间的区别,谢谢!

Object类是所有类的超类。不管你有没有写extends Object,那你的类还是Object类的子类。所有类都默认继承了这个类。这就使得Object类型的变量能够兼容所有类的数据。比如String a = 12;这肯定是不正确的。但是Object a = 12;就是正确的。因为Object是所有类的超类。然后我们可以使用一个强制类型转换将Object类型的数据转换成其他类型的数据。来看你的代码:

Object student = context.getBean("stu1");
Student student = (student) context.getBean("stu1");

很明显,这个student变量是个Student类型的数据。因为Object是所有类的超类。所以它也能接受一个Student类型的数据。日后使用的时候还可以用强制类型转换转换成Student类型的数据