In Java, an Object can have a runtime type (which is what it was created as) and a casted type (the type you have casted it to be).
Object
I\'m wondering what
In this case, A is the reference type while B is the instance type
A
B