OOPs concept forms the basis of Java
Programming Language, I will try to answer your question in a very layman
language.
OOPs stands for Object Oriented
Programming. An approach to do programming which is based on Objects (or real
life objects). There are mainly six OOPs concepts in general.
- Object
- Class
- Inheritance
- Polymorphism
- Abstraction
- Encapsulation
Object.
What is an object? Let me explain
you this with a very simple example.
Consider
a phone, now remember that an object always consists of behavior and state.
In our current example a mobile can have behaviors i.e. It can make &
receive calls, It can receive messages , It can set alarms etc. while it can
have states too i.e. it will have model number, color, type etc. Best
core java training in Bangalore
So guys always remember that an
object always consists of state and behavior.
Class
Class is a logical collection of
the objects and nothing more than that.
Moving on with our current example
if an object is a phone than the collections of different types of phones is
known as a class or if you consider vehicle as a class then collection of all
types of vehicle i.e. car, bike, truck, ambulance, scooter etc. can considered
as objects of this class. Similarly think of other examples of your own.
Inheritance
Inheritance is a special type of
relationship where a class acquires the inherent properties of its parent class
along with this it also contains its own exclusive properties.
For eg. Consider there is a Phone
class which is a parent class ,now phone class can contain very basic properties
that a other types of phone class should possess i.e. make and receive calls
and redial properties. As shown in the above diagram there are three child
classes of the phone class
Telephone contains the properties of parent class and it does not
have it own properties
Mobile phone inherits the properties of parent class as well as its own
exclusive properties like send and receive messages.
Smart
phone
inherits the properties of parent class along with this it also contains its
own properties like send and receive messages , browse internet and install and
use applications which is made specially for smartphones. Java
Training in Bangalore
Polymorphism
Polymorphism simply means having
multiple forms. Let me explain you this with an example and how this
concept fits into java.
Consider a real world scenario , in
cricket we know that there are different types of bowlers i.e. Fast bowlers ,
Medium pace bowlers and spinners as shown in the above figure. As you can see
in the diagram that there is a parent class called BowlerClass and it
has three child classes called FastPacer, MediumPacer and Spinner
classes. Bowler class has bowlingMethod() and all the child classes
inheriting this bowlingMethod(). As we all know that a fast bowler will
going to bowl differently as compared to medium pacer and spinner in terms of
bowling speed, long run up and way of bowling,etc. Similarly a medium pacer’s
implementation of bowlingMethod() is also going to be different as
compared to other bowlers. And same happens with spinner class.
The point of above discussion is
simply that a same name tends to multiple forms.All the three classes
above inherited the bowlingMethod() but their implementation is totally
different from one another.
Polymorphism in JAVA is implemented
by two ways:
1. Method Overriding
2. Method Overloading
Above example was of method
overriding.
Abstraction
Abstraction means hiding the
complexity and showing the easier form of the system .
For eg. Consider a bike as shown in
the above figure, we all know that bike consists of various sophisticated parts
like ignition system, exhaust pipe, wheels, brake systems etc. as shown in the
above figure.
As a bike rider,we are not aware of
the internal complexity and internal functionality of various parts of our
system(bike) or in other words this complexity and internal functionality is
hidden from us because as a bike rider we do not bother about how this
complicated parts are implemented with each other. As a rider we only need to
start our ignition system and change the gear to ride the bike.
This is called abstraction where
easier form of the system is exposed to you without exposing the complexities.
Similarly you can point out as many examples of abstraction from your
surroundings like telephone, television, vehicles, computers ,etc.
In java abstraction is implemented
using two ways
1. Interface
2. Abstract Class
Encapsulation
Encapsulation means data hiding in-order
to make it safe from any modification. What does it mean? The best
example to understand encapsulation is a Medical capsule. Drug is always safe
inside the capsule. Encapsulation is implemented using POJO classes (getter and
setter methods).
No comments:
Post a Comment