A)
->”abstraction” is a keyword in java.
->”abstraction” modifier is applicable only to methods and classes. So it can’t be applied to variables.
->in java a method with “body” i.e. definition is known as “concrete method”.
Ex:
void x()
{
int a=10;
} // concrete method
void x()
{
} // null body method and concrete
void y()
{
} //concrete method with null body
->A method that has only declaration but not any definition is declared “abstraction”.
i.e. body less/definition less method is nothing but an abstraction method.
Ex: abstract void mave();
->if a method is abstract , its class also should declared as abstract.
Note : An abstract class have zero or more abstract methods.
Ex:
alass A
{
abstract void x();
} // error. Class must be declare abstract.
->abstract methods enforce the sub classes to implement them i.e. override them.
->if a class is inheriting from an abstract class then it is the responsibility of the subclass to override (implement) all the abstract methods of the super class. Otherwise the sub class also becomes abstract.
Additional information:
- The method which only prototype/declaration but not contain body called abstract method/non concrete method.
- The method which only prototype/declaration but not contain body called abstract method/non concrete method.
- A method contain body is called concrete method. the method with doesn’t contain body called non-concrete method.
- The abstraction method in java is equal to pure virtual method in c++.
Ex:
abstract class B
{
} // ok. Abstract class need not have abstract methods.
- if the class is abstract its instantiation is prevented.
- the abstract class is a non-concrete class.
- in the above example if the abstract keyword is removed then that becomes a concrete class.
i.e.
class B
{
} //ok. It is concrete class but null instantiation.
Comments
Post a Comment