Jak działa rzutowanie obiektów Java za sceną? [duplikować]

Możliwy duplikat:
Jak działa operator obsady Java?
Implementacja castingu Java

Zawsze zastanawiam się, jak działa rzutowanie obiektów w Javie. Rozumiem, że dla typu prymitywnego będzie on bardziej podobny do poziomu reprezentacji binarnej, ale co z obiektem? Czy to trochę takPolymorphism lubdynamic binding w tym wszystko zostanie ustalone w czasie wykonywania? Na przykład:

class Parent{
     void A(){}
}
class Child extends Parent{
     @Override
     void A(){}
}

Parent p = new Parent();
Child c = (Child) p;

Jak to działa za sceną? Czy tworzy nową instancjęChild? A także, co się stanie, jeśli spróbujesz rzucić:

Child b = (Child) new Object();

I ostatni, gdy rzucasz prymityw na klasę opakowania:

Double d = (Double) 3.3;

Wiem, że nie musisz go rzucać, ale co jeśli? Czy jest coś znaczącego, co dzieje się na zapleczu?

questionAnswers(5)

yourAnswerToTheQuestion