Question
Which of the following best demonstrates encapsulation
in Object-Oriented Programming (OOP)?Solution
Encapsulation is one of the core principles of Object-Oriented Programming. It is the process of bundling the data (variables) and methods that operate on that data into a single unit, often a class, while restricting direct access to some of the object's components. This is achieved by declaring variables as private and providing public getter and setter methods to access and modify them. Why Option 3 is Correct: Encapsulation ensures that the internal representation of an object is hidden from the outside. The object exposes only specific methods to manipulate its state, providing controlled access and maintaining integrity. For example: class Account { private double balance; // private variable ensures data hiding public void setBalance(double amount) { if (amount > 0) { balance = amount; } else { System.out.println("Invalid amount"); } } public double getBalance() { return balance; }} Here, the balance variable is hidden, and access is managed via getBalance and setBalance methods, ensuring that improper data cannot corrupt the object. Encapsulation improves code readability, security, and modularity. It adheres to the principle of "data hiding," reducing the chance of errors caused by unintended modifications. ________________________________________ Why Other Options Are Incorrect: 1. Using inheritance to extend a base class with additional functionality: This describes inheritance, not encapsulation. While inheritance promotes code reuse, it does not hide internal data or enforce controlled access to it. Encapsulation focuses on protecting the internal state of an object. 2. Declaring all member variables as public for easy access: Public member variables violate the concept of encapsulation. It allows direct access and modification of an object's state, defeating the purpose of data hiding and controlled access, potentially leading to integrity issues. 3. Overloading a method to perform multiple functionalities: Method overloading is a feature of polymorphism, where multiple methods in the same class have the same name but different parameter lists. While useful, it does not relate to encapsulation, which is about data protection and controlled access. 4. Using static variables to share data across instances: Static variables are shared among all instances of a class and can break encapsulation if not used carefully. Encapsulation emphasizes protecting the internal state of an individual object, not sharing data globally.
- On which date was 'World Veterinary Day' recently observed?
Why does seawater appear blue?
Where was the world’s highest enduro mountain biking race “Monduro 4.0” started?
India's merchandise exports to how many countries recorded positive growth rates in FY 2023-24?
Which of the following institution releases the environmental performance index?
What is the purpose of the Reserve Bank of India (RBI) introducing a Fully Accessible Route (FAR) for investments in sovereign green bonds?
- Michel Talagrand, recipient of the 2024 Abel Prize, is a mathematician from which country?
Consider the following:
I. Financial Inclusion Index
II. Wholesale Price Index
III. Consumer Price Index
Which of the ind...
- Which nutritional deficiency disorder manifests as a swollen abdomen and stunted growth in children despite adequate caloric intake?
- What is the name of the Thai adaptation of the Indian epic Ramayana?