JAVA中的向下转型问题

我想问就是标红的那一行我传入的是Integer类的数据(int自动装箱成Integer) 然后调用方法向上转型成了Object类 然后Object类按道理可以向下转型成String类啊?
package com.xyh.Demo;
class Point{
private Object x;
private Object y;
public Object getX() {
return x;
}
public void setX(Object x) {
this.x = x;
}
public Object getY() {
return y;
}
public void setY(Object y) {
this.y = y;
}
}
public class TestDemo {

public static void main(String[] args) {
    // TODO Auto-generated method stub
    Point p=new Point();
    p.setX("东经100度");
    [color=#FF0000]p.setY(10);[/color]
    String x=(String)p.getX();
    String y=(String)p.getY();


}

}

不能 ,x你传入的是String,也就四东经100度,你说你整么将他转成int类型,如果行那又会是什么呢,要符合逻辑。

int是基本类型的数据,不是一个类,基本数据类型没有向上转型的说法,因此不能向上转型为Object类型,向上转型一般发生于子类向父类向上转型、接口的实现向接口向上转型,想要向上转型为Object类,必须是Object类的子类才能完成。

你调用setX方法传入的是一个字符串啊,String类型的。String是引用数据类型,是Object的子类,因此Object是可以接收的。setY传入的是int,但是int是一个基本数据类型,根本不是一个类,所以Object接收不了的。你可以用int的包装类,Integer试试,这样就可以了。

回去把多态这块重新看一遍