Basic OOP Concept and
Features of OOP
Sanaka Educational Trust’s Group of Institutions, Durgapur
Name:- Anirudh Chakraborty | Roll Number: 27800123010
Stream: Computer Science & Engineering | Semester: 5th
Paper Code: PCC CS503 - Object-Oriented Programming
Understanding Programming Paradigms
Procedure-Oriented Programming (POP) Object-Oriented Programming (OOP)
Definition: Focuses on procedures or functions that operate on Definition: Organises software design around data, or objects,
data. Data is global and can be accessed by any function. rather than functions and logic. Data is encapsulated within
objects.
• Top-down approach. • Bottom-up approach.
• Less secure due to global data. • More secure due to data hiding.
• Poor reusability. • High reusability and maintainability.
Characteristic Features of OOP
Encapsulation Inheritance
Bundling data and methods that operate on the data into a single Allows a class to inherit properties and behaviours from another
unit (object), restricting direct access to data from outside the class, promoting code reusability and establishing a natural
bundle. hierarchy.
Polymorphism Abstraction
The ability of an object to take on many forms. A single interface Hiding complex implementation details and showing only the
can be used for different data types or different classes. essential features of the object. Focuses on 'what' an object does,
rather than 'how'.
The Barebones of a Java Program
A basic Java program consists of a class definition, typically with
public class HelloWorld { public static void
a main method which serves as the entry point for execution.
main(String[] args)
{ System.out.println("Hello, OOPS!"); } }
Structure:
• class MyClass { ... }: The blueprint for objects.
• public static void main(String[] args)
{ ... }: The method where program execution begins.
Every statement within the main method contributes to the
program's logic.
Key Features of Java
Platform Independence Object-Oriented
Write once, run anywhere (WORA) via Java Virtual Machine Fully supports core OOP principles: Encapsulation,
(JVM). Code compiled into bytecode runs on any system with Inheritance, Polymorphism, and Abstraction.
JVM.
Robust & Secure Multithreaded & Portable
Strong memory management, exception handling, and Built-in support for concurrent programming and easy
bytecode verifier enhance reliability and security. migration across different hardware platforms.
Applications of Java in Real
Life
• Web Applications: Enterprise- • Big Data Technologies: Core
level web frameworks like Spring components of Hadoop, Spark
and Hibernate. for processing large datasets.
• Mobile Applications (Android): • Internet of Things (IoT):
Over 80% of Android apps are Embedded systems and smart
developed using Java. devices often use Java ME.
• Enterprise Software: Used • Cloud Computing: Many cloud
widely in financial services, e- platforms and services are built
commerce, and various business on Java.
solutions.
Conclusion: The Enduring Power of OOP and Java
Core Principles Java's Versatility Future Relevance
OOP provides a structured, secure, Java's platform independence, Mastering OOP concepts and Java is
and reusable approach to software robustness, and extensive ecosystem crucial for aspiring computer scientists,
development through encapsulation, make it a go-to language for diverse ensuring adaptability and success in an
inheritance, polymorphism, and applications, from mobile to enterprise evolving tech landscape.
abstraction. and big data.
References & Further Reading
Books:
Online Resources:
• Head First Java by Kathy Sierra and Bert Bates
• Oracle Java Tutorials
• Effective Java by Joshua Bloch
• GeeksforGeeks: OOP in Java
• Object-Oriented Analysis and Design with Applications by
• W3Schools Java OOP Tutorial
Grady Booch