File APIs for Java Developers
Manipulate DOC, XLS, PPT, PDF and many others from your application.
The moose likes Programmer Certification (SCJP/OCPJP) and the fly likes Object Reference Conversion Big Moose Saloon
  Search | Java FAQ | Recent Topics | Flagged Topics | Hot Topics | Zero Replies
Register / Login
JavaRanch » Java Forums » Certification » Programmer Certification (SCJP/OCPJP)
Bookmark "Object Reference Conversion" Watch "Object Reference Conversion" New topic

Object Reference Conversion

Brian Nguyen

Joined: Mar 19, 2002
Posts: 22
Could some one please explain to me the following rules of object reference conversion:
- If Old Type is an interface and New Type is a class, then the New Type must be Object.
- If Old Type is an array and New Type is a class, then New Type must be Object.
Thank you very much.
Corey McGlone
Ranch Hand

Joined: Dec 20, 2001
Posts: 3271
Look at the JLS, §5.5 Casting Conversion. It outlines all of the details about casting conversions. If you have any more questions, just let me know.

SCJP Tipline, etc.
Anthony Villanueva
Ranch Hand

Joined: Mar 22, 2002
Posts: 1055
Yes on both counts.

The new object reference must be a supertype of the old object reference. No class can be considered a supertype of an interface except for Object.
(If we have interface/classes A and B, and B is a subclass or subinterface of A either directly or though some intervening "layers" of classes/interfaces, then A is a supertype of B.)
Object arrays, and arrays of primitives are considered of type Object.
[ June 27, 2002: Message edited by: Anthony Villanueva ]
I agree. Here's the link:
subject: Object Reference Conversion
It's not a secret anymore!