What is up-casting and down casting? with example
Answers were Sorted based on User's Feedback
When the level of hierarchies are considered, it is the super class at higher level & sub class at lower level. Hence the assignment of subclass to a superclass is up casting & super to a subclass is down casting.
Is This Answer Correct ? | 15 Yes | 1 No |
The assignment of a subclass instance to a reference
variable of the type "reference to super class" is
described as a narrowing cast, because you are switching
from a more detailed view to a one with less detail. It is
also called as up-casting.
Is This Answer Correct ? | 12 Yes | 4 No |
Answer / vamsi krishna srirangam
upcasting is used to acess the common methods of
subclass(which are redefined from super class) using super
class reference.
use:because of this only polymorphism is possible.
example:
lcl_truck,lcl_bus are subclasses to lcl_vehicle
vehicle_list type table of ref to lcl_vehicle.
lcl_vehicle = lcl_truck.
append lcl_vehicle to vehicle_list.
clear lcl_vehicle.
lcl_vehicle = lcl_bus.
append lcl_vehicle to vehicle_list.
clear lcl_vehicle.
now if you redefine the estimate_fuel method in each
subclass then that particular method only called because
fuel estimation is different for bus and truck.
Down-casting:
to take control back to the object that is called now.
to identify the triggered subclass object from the list of
available subclass objects.
?= means check whether the reference(path)
is same. if left hand path is equals to right hand path then
it copies the right hand path to left hand variable.
it is used to pick one from several
Is This Answer Correct ? | 4 Yes | 0 No |
what is the use of OK_CODE in BDC?
What is features and transaction code
when u prefer lsmw?
Which table stores the programs created?
Write an abap program for creation of customer enquiry using BAPI 'BAPI_INQUIRY_CREATEFROMDATA'.
What is LDB?
What are user exits? What is involved in writing them? What precautions are needed?
What is an ABAP data dictionary?
What are the Control levels in internal tables?
What are secondary indexes. How can we know which index is being used in a select query?
What is the difference between sy-tabix and sy-index? Where it is used?
in ALV reports how double click event works?