This week's book giveaway is in the Clojure forum.
We're giving away four copies of Clojure in Action and have Amit Rathore and Francis Avila on-line!
See this thread for details.
Win a copy of Clojure in Action this week in the Clojure forum!
  • Post Reply
  • Bookmark Topic Watch Topic
  • New Topic

Downcasting

 
ABHIJEET BUDKE
Greenhorn
Posts: 8
  • 0
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Hello

How to implement Downcasting in following code


i try this code
child c1=(child) new parent();
for compile time itis ok
but for run time it gives exception
Exception in thread "main" java.lang.ClassCastException: parent cannot be cast to child

thanks in advance
 
Pranav Bhatt
Ranch Hand
Posts: 284
  • 0
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Hi,
check the below thread with good discussion on casting. This may help you out-:

Casting
 
gurneeraj singh
Ranch Hand
Posts: 80
  • 0
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Parent p=new C();
child c1=(child) p;

If you compile your code with these lines your code will run fine at runtime.

In your case new parent() object has the no knowledge of child class that's why at run time it just broke down.
(cast) operator is used for asking compiler to skip checking the compatibilty of the the two operands on either side of = operator, that is why it was fine at compile time.
 
With a little knowledge, a cast iron skillet is non-stick and lasts a lifetime.
  • Post Reply
  • Bookmark Topic Watch Topic
  • New Topic