Приведение объекта (тип double) к int

Хорошо, если у меня есть этот код

double a=1.5;
int b=(int)a;
System.out.println(b);

Все отлично работает, но

Object a=1.5;
int b=(int)a;
System.out.println(b);

выдает следующую ошибку после запуска (Eclipse не выдает никакой ошибки)

java.lang.ClassCastException: java.lang.Double cannot be cast to java.lang.Integer

Хотя, когда я делаю

Object a=1.5;
double b=(double)a;
int c=(int)b;
System.out.println(c);

или же

Object a=1.5;
int b=(int)(double)a;
System.out.println(b);

Снова все в порядке.

Почему вы должны бросить егоdouble первый ?

Ответы на вопрос(3)

Ваш ответ на вопрос