Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
0% found this document useful (1 vote)
144 views

OOPs Concept in Java

Uploaded by

kethanr.brn
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (1 vote)
144 views

OOPs Concept in Java

Uploaded by

kethanr.brn
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 24

6/26/24, 11:51 AM Object Oriented Programming (OOPs) Concept in Java - GeeksforGeeks

Java Arrays Java Strings Java OOPs Java Collection Java 8 Tutorial Java Multithreading Java Exception Handling Java Programs Java Project

Solve Coding Problems


Object Oriented
Share Your Experience Programming (OOPs)
Java Tutorial Concept in Java
Last Updated : 04 Jun, 2024
Overview of Java
As the name suggests, Object-Oriented Programming
Basics of Java or Java OOPs concept refers to languages that use
objects in programming, they use objects as a primary
Input/Output in
source to implement what is to happen in the code.
Java
Objects are seen by the viewer or user, performing
Flow Control in tasks you assign.
Java
Object-oriented programming aims to implement
Operators in Java real-world entities like inheritance, hiding,
polymorphism, etc. In programming. The main aim of
Strings in Java OOP is to bind together the data and the functions
that operate on them so that no other part of the code
Arrays in Java
can access this data except that function.

OOPS in Java
We use cookies to ensure you have the best browsing experience on our website. By using our site, you acknowledge that you have read
Got It !
and understood our Cookie Policy & Privacy Policy
Skip to content
https://www.geeksforgeeks.org/object-oriented-programming-oops-concept-in-java/ 1/24
6/26/24, 11:51 AM Object Oriented Programming (OOPs) Concept in Java - GeeksforGeeks

Object Oriented
Programming (OOPs)

Let us discuss prerequisites by polishing concepts of


method declaration and message passing. Starting off
with the method declaration, it consists of six
components:

We use cookies to ensure you have theAccess


best browsing experience
Modifier: on our website.
Defines By usingtype
the access our site,ofyou
theacknowledge that you have read
and understood our Cookie Policy & Privacy Policy
method i.e. from where it can Skipbetoaccessed
content in your
https://www.geeksforgeeks.org/object-oriented-programming-oops-concept-in-java/ 2/24
6/26/24, 11:51 AM Object Oriented Programming (OOPs) Concept in Java - GeeksforGeeks

application. In Java, there are 4 types of access


specifiers:
public: Accessible in all classes in your
application.
protected: Accessible within the package
in which it is defined and in its
subclass(es) (including subclasses
declared outside the package).
private: Accessible only within the class
in which it is defined.
default (declared/defined without using
any modifier): Accessible within the same
class and package within which its class
is defined.
The return type: The data type of the value
returned by the method or void if it does not return
a value.
Method Name: The rules for field names apply to
method names as well, but the convention is a
little different.
Parameter list: Comma-separated list of the input
parameters that are defined, preceded by their
data type, within the enclosed parentheses. If
We use cookies to ensure you have the best browsing experience on our website. By using our site, you acknowledge that you have read
and understood our Cookie Policy & Privacy Policy
Skip to content
https://www.geeksforgeeks.org/object-oriented-programming-oops-concept-in-java/ 3/24
6/26/24, 11:51 AM Object Oriented Programming (OOPs) Concept in Java - GeeksforGeeks

there are no parameters, you must use empty


parentheses ().
Exception list: The exceptions you expect the
method to throw. You can specify these
exception(s).
Method body: It is the block of code, enclosed
between braces, that you need to execute to
perform your intended operations.

Message Passing: Objects communicate with one


another by sending and receiving information to each
other. A message for an object is a request for
execution of a procedure and therefore will invoke a
function in the receiving object that generates the
desired results. Message passing involves specifying
the name of the object, the name of the function and
the information to be sent.

Master OOP in Java Write cleaner, more


modular, and reusable Java code by building a
foundation in object-oriented programming with
Educative’s interactive course Learn Object-
Oriented Programming in Java. Sign up at
We use cookies to ensure you have the best browsing experience on our website. By using our site, you acknowledge that you have read
and understood our Cookie Policy & Privacy Policy
Skip to content
https://www.geeksforgeeks.org/object-oriented-programming-oops-concept-in-java/ 4/24
6/26/24, 11:51 AM Object Oriented Programming (OOPs) Concept in Java - GeeksforGeeks

Educative.io with the code GEEKS10 to save


10% on your subscription.

Now that we have covered the basic prerequisites, we


will move on to the 4 pillars of OOPs which are as
follows. But, let us start by learning about the
different characteristics of an Object-Oriented
Programming Language.

OOPS concepts are as follows:

1. Class
2. Object
3. Method and method passing
4. Pillars of OOPs
Abstraction
Encapsulation
Inheritance
Polymorphism
Compile-time polymorphism
Runtime polymorphism

We use cookies to ensure you have the best browsing experience on our website. By using our site, you acknowledge that you have read
and understood our Cookie Policy & Privacy Policy
Skip to content
https://www.geeksforgeeks.org/object-oriented-programming-oops-concept-in-java/ 5/24
6/26/24, 11:51 AM Object Oriented Programming (OOPs) Concept in Java - GeeksforGeeks

A class is a user-defined blueprint or prototype from


which objects are created. It represents the set of
properties or methods that are common to all objects
of one type. Using classes, you can create multiple
objects with the same behavior instead of writing
their code multiple times. This includes classes for
objects occurring more than once in your code. In
general, class declarations can include these
components in order:

1. Modifiers: A class can be public or have default


access (Refer to this for details).
2. Class name: The class name should begin with the
We use cookies to ensure you have the best browsing experience on our website. By using our site, you acknowledge that you have read
initial letter capitalized by convention.
and understood our Cookie Policy & Privacy Policy
Skip to content
https://www.geeksforgeeks.org/object-oriented-programming-oops-concept-in-java/ 6/24
6/26/24, 11:51 AM Object Oriented Programming (OOPs) Concept in Java - GeeksforGeeks

3. Superclass (if any): The name of the class’s parent


(superclass), if any, preceded by the keyword
extends. A class can only extend (subclass) one
parent.
4. Interfaces (if any): A comma-separated list of
interfaces implemented by the class, if any,
preceded by the keyword implements. A class can
implement more than one interface.
5. Body: The class body is surrounded by braces, { }.

An object is a basic unit of Object-Oriented


Programming that represents real-life entities. A
typical Java program creates many objects, which as
you know, interact by invoking methods. The objects
are what perform your code, they are the part of your
code visible to the viewer/user. An object mainly
consists of:

1. State: It is represented by the attributes of an


object. It also reflects the properties of an object.
2. Behavior: It is represented by the methods of an
object. It also reflects the response of an object to
other objects.
3. Identity: It is a unique name given to an object that
We use cookies to ensure you have theenables
best browsing
it toexperience
interactonwith
our website.
otherByobjects.
using our site, you acknowledge that you have read
and understood our Cookie Policy & Privacy Policy
Skip to content
https://www.geeksforgeeks.org/object-oriented-programming-oops-concept-in-java/ 7/24
6/26/24, 11:51 AM Object Oriented Programming (OOPs) Concept in Java - GeeksforGeeks

4. Method: A method is a collection of statements


that perform some specific task and return the
result to the caller. A method can perform some
specific task without returning anything. Methods
allow us to reuse the code without retyping it,
which is why they are considered time savers. In
Java, every method must be part of some class,
which is different from languages like C, C++, and
Python.

class and objects one simple java program :

Java

public class GFG {

static String Employee_name;


static float Employee_salary;

static void set(String n, float p) {


Employee_name = n;
Employee_salary = p;
}

static void get() {


System.out.println("Employee name is:
" +Employee_name );
We use cookies to ensure you have the best browsing experience on our website. By using our site,
System.out.println("Employee CTCyou acknowledge that you have read
is:
and" understood our Cookie Policy & Privacy Policy
+ Employee_salary);
Skip to content
https://www.geeksforgeeks.org/object-oriented-programming-oops-concept-in-java/ 8/24
6/26/24, 11:51 AM Object Oriented Programming (OOPs) Concept in Java - GeeksforGeeks
}

public static void main(String args[]) {


GFG.set("Rathod Avinash", 10000.0f);
GFG.get();
}
}

Output

Employee name is: Rathod Avinash


Employee CTC is: 10000.0

Let us now discuss the 4 pillars of OOPs:

Pillar 1: Abstraction
Data Abstraction is the property by virtue of which
only the essential details are displayed to the user.
The trivial or non-essential units are not displayed to
the user. Ex: A car is viewed as a car rather than its
individual components.
Data Abstraction may also be defined as the process
of identifying only the required characteristics of an
object, ignoring the irrelevant details. The properties
and
We use cookies to ensure you have behaviors
the best of an object
browsing experience differentiate
on our website. it site,
By using our from youother
acknowledge that you have read
and understood our Cookie Policy & Privacy Policy
Skip to content
https://www.geeksforgeeks.org/object-oriented-programming-oops-concept-in-java/ 9/24
6/26/24, 11:51 AM Object Oriented Programming (OOPs) Concept in Java - GeeksforGeeks

objects of similar type and also help in


classifying/grouping the object.

Consider a real-life example of a man driving a car.


The man only knows that pressing the accelerators
will increase the car speed or applying brakes will
stop the car, but he does not know how on pressing
the accelerator, the speed is actually increasing. He
does not know about the inner mechanism of the car
or the implementation of the accelerators, brakes etc.
in the car. This is what abstraction is.

In Java, abstraction is achieved by interfaces and


abstract classes. We can achieve 100% abstraction
using interfaces.

The abstract method contains only method


declaration but not implementation.

Demonstration of Abstract class

Java

//abstract class
abstract class GFG{
//abstract methods declaration
abstract void add();
We use cookies to ensure you have the best browsing experience
abstract voidonmul();
our website. By using our site, you acknowledge that you have read
and understood our Cookie Policy & Privacy Policy
Skip to content
https://www.geeksforgeeks.org/object-oriented-programming-oops-concept-in-java/ 10/24
6/26/24, 11:51 AM Object Oriented Programming (OOPs) Concept in Java - GeeksforGeeks
abstract void div();
}

Pillar 2: Encapsulation
It is defined as the wrapping up of data under a single
unit. It is the mechanism that binds together the code
and the data it manipulates. Another way to think
about encapsulation is that it is a protective shield
that prevents the data from being accessed by the
code outside this shield.

Technically, in encapsulation, the variables or the


data in a class is hidden from any other class and
can be accessed only through any member function
of the class in which they are declared.
In encapsulation, the data in a class is hidden from
other classes, which is similar to what data-hiding
does. So, the terms “encapsulation” and “data-
hiding” are used interchangeably.
Encapsulation can be achieved by declaring all the
variables in a class as private and writing public
methods in the class to set and get the values of
the variables.
We use cookies to ensure you have the best browsing experience on our website. By using our site, you acknowledge that you have read
and understood
Demonstration our Cookie Policy & Privacy Policy
of Encapsulation:
Skip to content
https://www.geeksforgeeks.org/object-oriented-programming-oops-concept-in-java/ 11/24
6/26/24, 11:51 AM Object Oriented Programming (OOPs) Concept in Java - GeeksforGeeks

Java

//Encapsulation using private modifier

//Employee class contains private data called


employee id and employee name
class Employee {
private int empid;
private String ename;
}

Pillar 3: Inheritance
Inheritance is an important pillar of OOP (Object
Oriented Programming). It is the mechanism in Java by
which one class is allowed to inherit the features
(fields and methods) of another class. We are
achieving inheritance by using extends keyword.
Inheritance is also known as “is-a” relationship.

Let us discuss some frequently used important


terminologies:

Superclass: The class whose features are inherited


is known as superclass (also known as base or
parent class).
We use cookies to ensure you have theSubclass:
best browsingThe classon
experience that inherits
our website. By the
usingother
our site,class is
you acknowledge that you have read
knownand understood
as subclassour Cookie
(alsoPolicy
known& Privacy derived
Policy
Skip toascontent or
https://www.geeksforgeeks.org/object-oriented-programming-oops-concept-in-java/ 12/24
6/26/24, 11:51 AM Object Oriented Programming (OOPs) Concept in Java - GeeksforGeeks

extended or child class). The subclass can add its


own fields and methods in addition to the
superclass fields and methods.
Reusability: Inheritance supports the concept of
“reusability”, i.e. when we want to create a new
class and there is already a class that includes
some of the code that we want, we can derive our
new class from the existing class. By doing this,
we are reusing the fields and methods of the
existing class.

Demonstration of Inheritance :

Java

//base class or parent class or super class


class A{
//parent class methods
void method1(){}
void method2(){}
}

//derived class or child class or base class


class B extends A{ //Inherits parent class
methods
//child class methods
void method3(){}
void method4(){}
We use cookies to ensure you have the best browsing
} experience on our website. By using our site, you acknowledge that you have read
and understood our Cookie Policy & Privacy Policy
Skip to content
https://www.geeksforgeeks.org/object-oriented-programming-oops-concept-in-java/ 13/24
6/26/24, 11:51 AM Object Oriented Programming (OOPs) Concept in Java - GeeksforGeeks

Pillar 4: Polymorphism
It refers to the ability of object-oriented programming
languages to differentiate between entities with the
same name efficiently. This is done by Java with the
help of the signature and declaration of these entities.
The ability to appear in many forms is called
polymorphism.

E.g.

Java

sleep(1000) //millis

sleep(1000,2000) //millis,nanos

Note: Polymorphism in Java is mainly of 2


types:
We use cookies to ensure you have the best browsing experience on our website. By using our site, you acknowledge that you have read
1. Overloading
and understood our Cookie Policy & Privacy Policy
Skip to content
https://www.geeksforgeeks.org/object-oriented-programming-oops-concept-in-java/ 14/24
6/26/24, 11:51 AM Object Oriented Programming (OOPs) Concept in Java - GeeksforGeeks

2. Overriding

Example

Java

// Java program to Demonstrate Polymorphism

// This class will contain


// 3 methods with same name,
// yet the program will
// compile & run successfully
public class Sum {

// Overloaded sum().
// This sum takes two int parameters
public int sum(int x, int y)
{
return (x + y);
}

// Overloaded sum().
// This sum takes three int parameters
public int sum(int x, int y, int z)
{
return (x + y + z);
}

// Overloaded sum().
// This sum takes two double parameters
public double sum(double x, double y)
We use cookies to ensure you have the best browsing
{ experience on our website. By using our site, you acknowledge that you have read
return
and understood (x +Policy
our Cookie y); & Privacy Policy
} Skip to content
https://www.geeksforgeeks.org/object-oriented-programming-oops-concept-in-java/ 15/24
6/26/24, 11:51 AM Object Oriented Programming (OOPs) Concept in Java - GeeksforGeeks

// Driver code
public static void main(String args[])
{
Sum s = new Sum();
System.out.println(s.sum(10, 20));
System.out.println(s.sum(10, 20,
30));
System.out.println(s.sum(10.5,
20.5));
}
}

Output

30
60
31.0

Conclusion
The Object Oriented Programming (OOPs) concept in
Java is a powerful way to organize and write code. It
uses key ideas like classes, objects, inheritance,
polymorphism, encapsulation, and abstraction to
create flexible and reusable code. By using the Java
OOPs concept, programmers can build complex
We use cookies to ensure you have the best browsing
applications experience
more on our website.
efficiently, makingBy using
theourcode
site, youeasier
acknowledge that you have read
and understood our Cookie Policy & Privacy Policy
to manage, understand, andSkip modify. Overall, Java’s
to content
https://www.geeksforgeeks.org/object-oriented-programming-oops-concept-in-java/ 16/24
6/26/24, 11:51 AM Object Oriented Programming (OOPs) Concept in Java - GeeksforGeeks

OOPs concepts help in creating robust and scalable


software solutions.

Object Oriented Programming (OOPs)


Concept in Java – FAQ

What is OOPs concept in Java?

OOPs (Object-Oriented Programming) is a


programming paradigm based on the concept of
objects, which can contain data in the form of
fields (attributes or properties) and code in the
form of procedures (methods or functions). In
Java, OOPs concepts include encapsulation,
inheritance, polymorphism, and abstraction.

Why is OOPs important in Java?

OOPs helps in organizing and structuring code


in a more manageable way, making it easier to
maintain and scale Java applications. It also
We use cookies to ensure you have the best browsing experience on our website. By using our site, you acknowledge that you have read
promotes code reusability,
and understood our Cookie Policymodularity,
& Privacy Policyand
Skip to content
https://www.geeksforgeeks.org/object-oriented-programming-oops-concept-in-java/ 17/24
6/26/24, 11:51 AM Object Oriented Programming (OOPs) Concept in Java - GeeksforGeeks

flexibility, leading to efficient and robust


software development.

What are the main principles of OOPs in Java?

The main principles of OOPs in Java are


encapsulation, inheritance, polymorphism, and
abstraction. Encapsulation ensures that the
internal state of an object is hidden and can
only be accessed through public methods.
Inheritance allows one class to inherit
properties and behavior from another.
Polymorphism enables objects to be treated as
instances of their parent class. Abstraction
focuses on hiding the implementation details
and showing only the necessary information to
the outside world.

How is OOPs implemented in Java?

We use cookies to ensure you have the best browsing experience on our website. By using our site, you acknowledge that you have read
and understood our Cookie Policy & Privacy Policy
Skip to content
https://www.geeksforgeeks.org/object-oriented-programming-oops-concept-in-java/ 18/24
6/26/24, 11:51 AM Object Oriented Programming (OOPs) Concept in Java - GeeksforGeeks

In Java, OOPs is implemented through classes


and objects. A class serves as a blueprint for
creating objects, which are instances of that
class. Each object has its own set of attributes
(variables) and methods (functions). By
following OOPs concepts like encapsulation,
inheritance, polymorphism, and abstraction, Java
developers can design well-structured and
maintainable code.

What are the advantages of using OOPs in Java?

Some advantages of using OOPs in Java include


code reusability, modularity, flexibility,
scalability, and easier maintenance. OOPs
enables developers to model real-world entities
as objects, leading to more intuitive and
organized code. It also supports features like
inheritance and polymorphism, which enhance
the extensibility and readability of Java
We use cookies to ensure you have theapplications.
best browsing experience on our website. By using our site, you acknowledge that you have read
and understood our Cookie Policy & Privacy Policy
Skip to content
https://www.geeksforgeeks.org/object-oriented-programming-oops-concept-in-java/ 19/24
6/26/24, 11:51 AM Object Oriented Programming (OOPs) Concept in Java - GeeksforGeeks

Can you provide an example of OOPs concept


implementation in Java?

Sure! An example of OOPs concept


implementation in Java is creating a ‘Car’ class
with attributes like ‘make’, ‘model’, and ‘year’,
along with methods like ‘start()’, ‘accelerate()’,
and ‘stop()’. By instantiating objects from the
‘Car’ class and calling its methods, we can
simulate the behavior of different car instances
in a structured and object-oriented manner.

R Risha…

Previous Article Next Article


util.Arrays vs reflect.Array Why Java is not a purely
in Java with Examples Object-Oriented
Language?

Similar Reads
We use cookies to ensure you have the best browsing experience on our website. By using our site, you acknowledge that you have read
and understood our Cookie Policy & Privacy Policy
Skip to content
https://www.geeksforgeeks.org/object-oriented-programming-oops-concept-in-java/ 20/24
6/26/24, 11:51 AM Object Oriented Programming (OOPs) Concept in Java - GeeksforGeeks

OOPs | Object Oriented Design


Object-oriented design started right from the moment
computers were invented. Programming was there, an…
9 min read

Brief Overview & Comparison of Object-…


In this article, you will get the ability to think how really
OOP works in Java through C. Through C, you will…
3 min read

Four Main Object Oriented Programming Concepts…


Object-oriented programming generally referred to as
OOPS is the backbone of java as java is not a purely…
7 min read

Best Practices of Object Oriented Programming…


As the name suggests, Object-Oriented Programming
or OOPs refers to languages that use objects in…
5 min read

Why Java is not a purely Object-Oriented Language?


Pure Object Oriented Language or Complete Object
We use cookies to ensure you have the best browsing
Oriented Languageexperience
are on our website.
Fully ObjectByOriented
using our site, you acknowledge that you have read
Languag…
and understood our Cookie Policy & Privacy Policy
Skip to content
https://www.geeksforgeeks.org/object-oriented-programming-oops-concept-in-java/ 21/24
6/26/24, 11:51 AM Object Oriented Programming (OOPs) Concept in Java - GeeksforGeeks
3 min read

View More Articles

java-basics Java-Object Oriented


Article Tags :
Java

Practice Tags : Java

Company Explore Languages DSA Data Science Web


About Us Job-A-Thon Python Data Structures & ML Technologies
A-143, 9th Floor, Sovereign Corporate Legal Hiring Challenge Java Algorithms
Tower, Sector-136, Noida, Uttar Pradesh - Data Science HTML
Careers Hack-A-Thon C++ DSA for With Python CSS
201305
In Media GfG Weekly PHP Beginners Data Science For JavaScript
We use cookies to ensure you have the best browsing experience
Contact Us on our website.
ContestBy using our site, you acknowledgeBasic
GoLang thatDSA
you have readBeginner TypeScript
and understood our Cookie
Advertise with us Policy & Privacy Policy SQL Problems ReactJS
Skip to content
https://www.geeksforgeeks.org/object-oriented-programming-oops-concept-in-java/ 22/24
6/26/24, 11:51 AM Object Oriented Programming (OOPs) Concept in Java - GeeksforGeeks

GFG Corporate Offline Classes R Language DSA Roadmap Machine NextJS


Solution (Delhi/NCR) Android Tutorial DSA Interview Learning Tutorial NodeJs
Placement DSA in JAVA/C++ Questions ML Maths Bootstrap
Training Program Master System Competitive Data Tailwind CSS
Design Programming Visualisation
Master CP Tutorial
GeeksforGeeks Pandas Tutorial
Videos NumPy Tutorial
Geeks NLP Tutorial
Community Deep Learning
Tutorial

Python Computer DevOps System School Commerce


Tutorial Science Git Design Subjects Accountancy
Python GATE CS Notes AWS High Level Mathematics Business Studies
Programming Operating Docker Design Physics Economics
Examples Systems Kubernetes Low Level Design Chemistry Management
Django Tutorial Computer Azure UML Diagrams Biology HR Management
Python Projects Network GCP Interview Guide Social Science Finance
Python Tkinter Database DevOps Design Patterns English Grammar Income Tax
Web Scraping Management Roadmap OOAD
OpenCV Tutorial System System Design
Python Interview Software Bootcamp
Question Engineering Interview
Digital Logic Questions
Design
Engineering
Maths

Databases
Preparation Competitive More Free Online Write & Earn
SQL Corner Exams Tutorials
We use cookies to ensure you have the best browsing experience on our website. By using our site, you acknowledge that you have read
Tools Write an Article
MYSQL Improve an
and understood our Cookie Policy & Privacy Policy JEE Advanced
PostgreSQL
Software Typing Test
Article
Skip to content UGC NET Development Image Editor
https://www.geeksforgeeks.org/object-oriented-programming-oops-concept-in-java/ 23/24
6/26/24, 11:51 AM Object Oriented Programming (OOPs) Concept in Java - GeeksforGeeks

PL/SQL Company-Wise UPSC Software Testing Code Formatters Pick Topics to


MongoDB Recruitment SSC CGL Product Code Converters Write
Process SBI PO Management Currency Share your
Resume SBI Clerk Project Converter Experiences
Templates IBPS PO Management Random Number Internships
Aptitude IBPS Clerk Linux Generator
Preparation Excel Random
Puzzles All Cheat Sheets Password
Company-Wise Generator
Preparation
Companies
Colleges

@GeeksforGeeks, Sanchhaya Education Private Limited, All rights reserved

We use cookies to ensure you have the best browsing experience on our website. By using our site, you acknowledge that you have read
and understood our Cookie Policy & Privacy Policy

https://www.geeksforgeeks.org/object-oriented-programming-oops-concept-in-java/ 24/24

You might also like