22) Super Keyword

package com.gns.sort;

/* Base class vehicle */
class Vehicle {
	int maxSpeed = 120;
}

/* sub class Car extending vehicle */
class Car extends Vehicle {
	int maxSpeed = 180;

	void display() {
		/* print maxSpeed of base class (vehicle) */
		System.out.println("Maximum Speed: " + super.maxSpeed);
	}
}

/* Driver program to test */
public class Test {
	public static void main(String[] args) {
		Car small = new Car();
		small.display();
	}
}
Output:
Maximum Speed: 120
In the above example, both base class and subclass have a member maxSpeed. We could access maxSpeed of base class in sublcass using super keyword.
package com.gns.sort;

/* Base class Person */
class Person {
	void message() {
		System.out.println("This is person class");
	}
}

/* Subclass Student */
class Student extends Person {
	void message() {
		System.out.println("This is student class");
	}

	// Note that display() is only in Student class
	void display() {
		// will invoke or call current class message() method
		message();

		// will invoke or call parent class message() method
		super.message();
	}
}

/* Driver program to test */
public class Test {
	public static void main(String args[]) {
		Student s = new Student();

		// calling display() of Student
		s.display();
	}
}
Output:
This is student class
This is person class
package com.gns.sort;

/* superclass Person */
class Person {
	Person() {
		System.out.println("Person class Constructor");
	}
}

/* subclass Student extending the Person class */
class Student extends Person {
	Student() {
		// invoke or call parent class constructor
		super();

		System.out.println("Student class Constructor");
	}
}

/* Driver program to test */
class Test {
	public static void main(String[] args) {
		Student s = new Student();
	}
}
Output:
Person class Constructor
Student class Constructor

Example 1:

Example 2:

Example 3:

Problems :

Last updated