1/25/2017 Java OOPs Concepts Javatpoint
Java OOPs Concepts
In this page, we will learn about basics of OOPs. Object Oriented
Programming is a paradigm that provides many concepts such as
inheritance, data binding, polymorphism etc.
Simula is considered as the first objectoriented programming
language. The programming paradigm where everything is
represented as an object, is known as truly objectoriented
programming language.
Smalltalk is considered as the first truly objectoriented
programming language.
OOPs (Object Oriented Programming
System)
Object
means a real
word entity
such as pen,
chair, table
etc. Object
Oriented
Programming is a methodology or paradigm to design a program
using classes and objects. It simplifies the software development
and maintenance by providing some concepts:
Object
Class
Inheritance
Polymorphism
Abstraction
Encapsulation
Object
Any entity that has state and behavior is known as an object. For
example: chair, pen, table, keyboard, bike etc. It can be physical
and logical.
http://www.javatpoint.com/javaoopsconcepts 1/6
1/25/2017 Java OOPs Concepts Javatpoint
Class
Collection of objects is called class. It is a logical entity.
Inheritance
When one object acquires all the properties and behaviours of
parent object i.e. known as inheritance. It provides code
reusability. It is used to achieve runtime polymorphism.
Polymorphism
When one task is
performed by different
ways i.e. known as
polymorphism. For
example: to convince the
customer differently, to
draw something e.g. shape
or rectangle etc.
In java, we use method overloading and method overriding to
achieve polymorphism.
Another example can be to speak something e.g. cat speaks meaw,
dog barks woof etc.
Abstraction
Hiding internal details and showing functionality is known as
abstraction. For example: phone call, we don't know the internal
processing.
In java, we use abstract class and interface to achieve abstraction.
Encapsulation
Binding (or wrapping) code and
data together into a single unit is
known as encapsulation. For example: capsule, it is wrapped with
different medicines.
http://www.javatpoint.com/javaoopsconcepts 2/6
1/25/2017 Java OOPs Concepts Javatpoint
A java class is the example of encapsulation. Java bean is the fully
encapsulated class because all the data members are private here.
Advantage of OOPs over Procedure
oriented programming language
1)OOPs makes development and maintenance easier where as in
Procedureoriented programming language it is not easy to manage
if code grows as project size grows.
2)OOPs provides data hiding whereas in Procedureoriented
programming language a global data can be accessed from
anywhere.
3)OOPs provides ability to simulate realworld event much more
effectively. We can provide the solution of real word problem if we
are using the ObjectOriented Programming language.
What is difference between objectoriented
programming language and objectbased
programming language?
Object based programming language follows all the features of OOPs
except Inheritance. JavaScript and VBScript are examples of object
based programming languages.
Do You Know ?
http://www.javatpoint.com/javaoopsconcepts 3/6
1/25/2017 Java OOPs Concepts Javatpoint
Can we overload main method ?
Constructor returns a value but, what ?
Can we create a program without main method ?
What are the 6 ways to use this keyword ?
Why multiple inheritance is not supported in java ?
Why use aggregation ?
Can we override the static method ?
What is covariant return type ?
What are the three usage of super keyword?
Why use instance initializer block?
What is the usage of blank final variable ?
What is marker or tagged interface ?
What is runtime polymorphism or dynamic method dispatch ?
What is the difference between static and dynamic binding ?
How downcasting is possible in java ?
What is the purpose of private constructor?
What is object cloning ?
What we will learn in OOPs Concepts ?
http://www.javatpoint.com/javaoopsconcepts 4/6
1/25/2017 Java OOPs Concepts Javatpoint
Advantage of OOPs
Naming Convention
Object and class
Method overloading
Constructor
static keyword
this keyword with 6 usage
Inheritance
Aggregation
Method Overriding
Covariant Return Type
super keyword
Instance Initializer block
final keyword
Abstract class
Interface
Runtime Polymorphism
Static and Dynamic Binding
Downcasting with instanceof operator
Package
Access Modifiers
Encapsulation
Object Cloning
← prev next →
Latest 4 Tutorials on JavaTpoint
Collections MS Word
Scala Perl
http://www.javatpoint.com/javaoopsconcepts 5/6
1/25/2017 Java OOPs Concepts Javatpoint
http://www.javatpoint.com/javaoopsconcepts 6/6