Abstraction is a one of the great feature of Oops,in
this feature hide entire details of product, show only requirement
specifications(what product will do).
The main purpose behind
abstraction is to increase productivity or use of product without knowledge of
product implementation.
in this case the person
don't know how product was implemented but know how product works or
action of product.
In java abstraction is
achieved by abstract class and interface,here interface provide 100%
abstraction and abstract class provide partial abstraction.
For example:-ATM
machine is example of abstraction.
every technical
and non-technical person use facility of ATM without knowing the entire
process. they know if they click on withdraw button then they can withdraw
money from ATM machine but they don't know when they click on withdraw button
the request is send to the server and after go into database and so on.
Here ATM machine show
only requirement specification and hide implementation,implementation provided
by third party.
when to use interface:- Interface
is an example of 100% abstraction ,when the person don't know anything
about implementation then go through interface.
when to use abstract
class:-when the person know about implementation but not completely then go
though abstract class.
Encapsulation is a process in which data and methods
binding into a single unit,class is a example of encapsulation.
class contains both data
and methods,methods operates on data of class.
Inheritance is a process of re-usability of code,using
this features we can reduce redundancy of code.
in this feature a super
class contains all common properties and sub class contains another additional
properties and all common properties of super class can be used into subclass
using inheritance .
In java Object is super
class of all classes including inbuilt classes of java as well as user define
classes .inheritance having some rules for accessing class members for security
purpose like private members of super class can not inherited in any ways into
sub classes.
Object class having some
methods by default available to all java classes through inheritance.
Polymorphism means a single entity having multiple
forms. polymorphism is directly related to object.
In object oriented
programming a parent class reference variable can hold parent class object as
well as child class object.
In java polymorphism can
achieved by two ways one is static polymorphism or early binding or compile
time polymorphism and second is dynamic polymorphysm or late binding or run
time polymorphism.
Method or function overloading
is a example of static binding and method overriding is a example of dynamic
binding.
Constructor is a special type of method having some
special properties.
- constructor having same name as
class name.
- constructor does not have any
return type not even void.
- constructor can not call ,it
automatically invoke at the time of object creation.
- constructor may be multiple
type.
- constructor may be
public,private,protected and default.
Comments
Post a Comment