what are upcasting and downcasting?
Answers were Sorted based on User's Feedback
Answer / arjun kumar
When we cast a reference along the class hierarchy in a
direction from the sub classes towards the root, it is an
upcast.
When we cast a reference along the class hierarchy in a
direction from the root class towards the children or
subclasses, it is downcast.
| Is This Answer Correct ? | 19 Yes | 3 No |
Answer / aravind
Please find the difference between DownCasting and Upcasting
with the beloe example
Base Class is Shape
public class Shape
{
protected int m_xpos;
protected int m_ypos;
public Shape()
{
}
public Shape(int x, int y)
{
m_xpos = x;
m_ypos = y;
}
}
Circle class which extends Shape class
public class Circle extends Shape
{
public Circle()
{
}
public Circle(int x, int y)
{
}
}
Main Class:
class CastingExample{
public static void main(String[] args) {
Shape s = new Circle(); // Upcasting
Circle c;
c = (Circle)s; // Downcasting explicitly we have to
do,this is unsafe.
}
}
| Is This Answer Correct ? | 10 Yes | 3 No |
Answer / vikram aditya
When reference variable of super class refers to the object of sub class that mechanism is known as Up-casting.
Ex:
A a=new B();
When reference variable of sub class refers to the object of super class that mechanism is known as Down-casting.
Ex:
B b=(B) a;
//Where A is super class and B is subclass
| Is This Answer Correct ? | 6 Yes | 0 No |
Answer / malligontla
A super class reference can be converted into a subclass
reference but this subclass reference is not useful to call
the methods of any of the classes. This convention is known
as Downcasting.
We can convert the subclass reference to a superclass
reference without using the cast operation, because compiler
will internally take care of the casting. This is known as
Upcasting.
| Is This Answer Correct ? | 3 Yes | 2 No |
Answer / amandee[
when we cast reference variable into subclass then
implicitly casting happens means that up casting and vice versa
| Is This Answer Correct ? | 1 Yes | 9 No |
Explain the difference between an Interface and an Abstract class?
How to override a equals() method and what is the use?
What are the restrictions imposed on method overriding?
java can provide security ,how can provide?
8 Answers Aspire, BNP Paribas, Genpact, IBM,
What is javac in java?
Why object class is super class for every class in java?
What is unicode datatype?
Can we force garbage collector to run ?
Difference between Applet & Application?
Is ResultSet class?
5 Answers Bally Technologies, TCS,
Explain about assignment statement?
Marker interface means , interface which has no methods.Then what is the necessity of its usage.I read "it tells the compiler that it should be treated differently ". "It is used to store state of an object". But still am not clear.Please explain clearly.