Skip to main content

Java Exception Handling MCQ Test

  Loading…

Inheriting Data members and Methods

 In Java, when a class inherits from another class, it inherits both the data members (fields or variables) and methods (functions or behaviors) of the parent class. This process is known as inheritance and is a fundamental concept of object-oriented programming.

Inheriting Data Members:

- Inherited data members include fields or variables declared in the parent class.

- These data members are accessible in the subclass just like they are in the parent class.

- Subclasses can use inherited data members directly or override them if necessary.


Inheriting Methods:

- Inherited methods include all the public and protected methods defined in the parent class.

- Subclasses can use inherited methods directly, extend their functionality, or override them to provide custom implementations.

- Private methods in the parent class are not inherited and are not accessible in the subclass.


Example:

Consider a simple example to illustrate inheritance in Java:

// Parent class

class Vehicle {

    String make;

    String model;

    int year;


    void start() {

        System.out.println("Starting the vehicle...");

    }


    void stop() {

        System.out.println("Stopping the vehicle...");

    }

}


// Subclass inheriting from Vehicle

class Car extends Vehicle {

    int numDoors;


    void honk() {

        System.out.println("Beep beep!");

    }

}


public class Main {

    public static void main(String[] args) {

        Car myCar = new Car();

        myCar.make = "Toyota";

        myCar.model = "Camry";

        myCar.year = 2021;

        myCar.numDoors = 4;


        System.out.println("Car make: " + myCar.make);

        System.out.println("Car model: " + myCar.model);

        System.out.println("Car year: " + myCar.year);

        myCar.start(); // Inherited method from Vehicle

        myCar.honk();  // Method specific to Car class

        myCar.stop();  // Inherited method from Vehicle

    }

}


In this example:

- The `Car` class inherits the `make`, `model`, `year` fields, and `start()`, `stop()` methods from the `Vehicle` class.

- It also defines its own field `numDoors` and method `honk()`.

- When creating an instance of `Car`, we can access both the inherited fields/methods and the class-specific fields/methods.


In summary, inheritance in Java allows subclasses to inherit both data members and methods from the superclass, providing code reuse and promoting a hierarchical structure in the class hierarchy.

Comments

Popular posts from this blog

Passing and Returning Objects in Java Methods

Passing and Returning Objects in Java Methods In Java, objects can be passed as parameters to methods and returned from methods just like other primitive data types. This allows for flexibility and the manipulation of object state within methods. Let's explore how passing and returning objects work in Java. Passing Objects as Parameters When you pass an object as a parameter to a method, you are essentially passing a reference to that object. This means that changes made to the object inside the method will affect the original object outside the method.  Example: class Car {     String model;     Car(String model) {         this.model = model;     } } public class CarProcessor {     // Method to modify the Car object     static void modifyCar(Car car, String newModel) {         car.model = newModel;     }     public static void main(String[] args) {       ...

Why is String[] args necessary in main() method in Java?

  Why is String[] args necessary in main() method in Java? In Java, the main method serves as the entry point for the program. The correct syntax for the main method is: public static void main (String[] args) { System.out.println( "Hello, Java!" ); } 🔹 Breaking it down: public → Accessible from anywhere. static → No need to create an object of the class to run it. void → No return value. main → Special method recognized by the JVM as the starting point. String[] args → Stores command-line arguments (optional but required by JVM). Why Can't We Skip String[] args ? JVM looks for main(String[] args) When you run a Java program, the JVM searches for the main method with exactly this signature : public static void main (String[] args) If you change or remove String[] args , the JVM cannot find the correct main() method and throws a runtime error (NoSuchMethodError). Java Specification Requires It The Java Language Specification (JLS) defines that main...