SlideShare a Scribd company logo
Inheritance
Dr. P. Victer Paul, Indian Institute of Information Technology Kottayam
2
Inheritance
 Inheritance can be defined as the process where one class
acquires the properties (methods and fields) of another.
 The class which inherits the properties of other is known
as subclass (derived class, child class) and the class whose
properties are inherited is known as superclass (base
class, parent class).
 Therefore, a subclass is a specialized version of a
superclass.
 It inherits all of the instance variables and methods
defined by the superclass and adds its own, unique
elements.
Dr. P. Victer Paul, Indian Institute of Information Technology Kottayam
3
Important terminologies
 Super Class: The class whose features are inherited.
 Sub Class: The class that inherits the other 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.
 To inherit from a class, use the extends keyword.
Dr. P. Victer Paul, Indian Institute of Information Technology Kottayam
4
Syntax
 extends is the keyword used to inherit the properties of a
class.
Dr. P. Victer Paul, Indian Institute of Information Technology Kottayam
5
Syntax
Dr. P. Victer Paul, Indian Institute of Information Technology Kottayam
6
Inheritance Demo
Dr. P. Victer Paul, Indian Institute of Information Technology Kottayam
7
Inheritance Demo
Dr. P. Victer Paul, Indian Institute of Information Technology Kottayam
Try it!!
 Although a subclass includes all of the members of its
superclass, it cannot access those members of the
superclass that have been declared as private.
 The final Keyword
 If you don't want other classes to inherit from a class, use the
final keyword.
8Dr. P. Victer Paul, Indian Institute of Information Technology Kottayam
Using super to Call Superclass
 A subclass can call a constructor defined by its superclass
by use of the following form of super:
 arg-list specifies any arguments needed by the constructor
in the superclass.
 super() must always be the first statement executed
inside a subclass’ constructor.
9Dr. P. Victer Paul, Indian Institute of Information Technology Kottayam
Using super to Call Superclass
10Dr. P. Victer Paul, Indian Institute of Information Technology Kottayam
Using super to access members
 A subclass can access the data members and methods of
superclass by use of the following form of super:
 member can be either a method or an instance variable.
 This second form of super is most applicable to situations
in which member names of a subclass hide (same name)
members by the same name in the superclass
11Dr. P. Victer Paul, Indian Institute of Information Technology Kottayam
Using super to access members
12Dr. P. Victer Paul, Indian Institute of Information Technology Kottayam
Types of Inheritance
13Dr. P. Victer Paul, Indian Institute of Information Technology Kottayam
Single Inheritance
 When a class inherits another class, it is known as a single inheritance.
14Dr. P. Victer Paul, Indian Institute of Information Technology Kottayam
Multi level Inheritance
 When there is a chain of inheritance, it is known as multilevel inheritance.
15Dr. P. Victer Paul, Indian Institute of Information Technology Kottayam
Hierarchical Inheritance
 When two or more classes inherits a single class, it is hierarchical inheritance
16Dr. P. Victer Paul, Indian Institute of Information Technology Kottayam
Multiple Inheritance
 To reduce the complexity and simplify the language, multiple
inheritance is not supported in java.
 Consider a scenario where A, B, and C are three classes.
 The C class inherits A and B classes.
 If A and B classes have the same method and you call it from child
class object, there will be ambiguity to call the method of A or B
class.
 In java, we can achieve multiple inheritance only through Interfaces.
17Dr. P. Victer Paul, Indian Institute of Information Technology Kottayam
Method Overriding
 In a class hierarchy, when a method in a subclass has the same name
and type signature as a method in its superclass,
 then the method in the subclass is said to override the method in the
superclass.
 When an overridden method is called from within a subclass, it will
always refer to the version of that method defined by the subclass.
 The version of the method defined by the superclass will be hidden.
18Dr. P. Victer Paul, Indian Institute of Information Technology Kottayam
Method Overriding
How to call the show()
method of Class A????
Two possible ways!!!!!
19Dr. P. Victer Paul, Indian Institute of Information Technology Kottayam
Final Keyword
 The keyword final has three uses.
 First, it can be used to create the equivalent of a named
constant.
 The other two uses of final apply to inheritance.
 Using final to Prevent Overriding
 Using final to Prevent Inheritance
20Dr. P. Victer Paul, Indian Institute of Information Technology Kottayam
Final Keyword
21Dr. P. Victer Paul, Indian Institute of Information Technology Kottayam
Important facts about inheritance
 Default superclass: Except Object class, which has no superclass,
every class has one and only one direct superclass (single
inheritance). In the absence of any other explicit superclass, every
class is implicitly a subclass of Object class.
 Superclass can only be one: A superclass can have any number of
subclasses. But a subclass can have only one superclass. This is
because Java does not support multiple inheritance with classes.
 Inheriting Constructors: A subclass inherits all the members (fields,
methods, and nested classes) from its superclass. Constructors are
not members, so they are not inherited by subclasses, but the
constructor of the superclass can be invoked from the subclass.
 Private member inheritance: A subclass does not inherit the private
members of its parent class. However, if the superclass has public or
protected methods for accessing its private fields, these can also be
used by the subclass.
22Dr. P. Victer Paul, Indian Institute of Information Technology Kottayam
The instanceof Keyword
 The java instanceof
operator is used to test
whether the object is an
instance of the specified
type (class or subclass or
interface).
 The instanceof in java is
also known as type
comparison operator
because it compares the
instance with type. It
returns either true or
false.
23Dr. P. Victer Paul, Indian Institute of Information Technology Kottayam
The Object Class
 There is one special class, Object, defined by Java.
 All other classes are subclasses of Object.
 That is, Object is a superclass of all other classes. This
means that a reference variable of type
 Object can refer to an object of any other class.
Check what are the methods associated with Object class!!!!
24Dr. P. Victer Paul, Indian Institute of Information Technology Kottayam
The End…
25Dr. P. Victer Paul, Indian Institute of Information Technology Kottayam

More Related Content

PPTX
Class properties
PPT
Unit 3 Java
PPT
Inheritance in c++ ppt (Powerpoint) | inheritance in c++ ppt presentation | i...
PPTX
Inheritance in oops
PDF
Lecture 10
PDF
Inheritance used in java
PDF
java-06inheritance
Class properties
Unit 3 Java
Inheritance in c++ ppt (Powerpoint) | inheritance in c++ ppt presentation | i...
Inheritance in oops
Lecture 10
Inheritance used in java
java-06inheritance

What's hot (17)

PDF
Top 10 java_oops_interview_questions
PPTX
Top 10 java oops interview questions
DOC
Java classes and objects interview questions
PDF
Common Programming Errors by Beginners in Java
PPT
OOPs Lecture 2
PPT
Inheritance and Polymorphism
PDF
Multiple Inheritance
PPTX
Inheritance
PDF
Learn C# Programming - Classes & Inheritance
PDF
EEE oops Vth semester viva questions with answer
PDF
Packages
PDF
Python - object oriented
PPTX
Interface in java ,multiple inheritance in java, interface implementation
PDF
Interfaces in java
PPT
inheritance
PPT
Inheritance, Object Oriented Programming
PPTX
Final presentation programming
Top 10 java_oops_interview_questions
Top 10 java oops interview questions
Java classes and objects interview questions
Common Programming Errors by Beginners in Java
OOPs Lecture 2
Inheritance and Polymorphism
Multiple Inheritance
Inheritance
Learn C# Programming - Classes & Inheritance
EEE oops Vth semester viva questions with answer
Packages
Python - object oriented
Interface in java ,multiple inheritance in java, interface implementation
Interfaces in java
inheritance
Inheritance, Object Oriented Programming
Final presentation programming
Ad

Similar to Java - Inheritance Concepts (20)

PPTX
Java Inheritance - sub class constructors - Method overriding
PPTX
OBJECT ORIENTED PROGRAMMING STRUCU2.pptx
PDF
JAVA UNIT 2 BCA students' notes IPU university
PPTX
Ch5 inheritance
PPTX
object oriented programming unit two ppt
PDF
‏‏‏‏‏‏oop lecture objectives will come.pdf
PPT
Chapter 5 (OOP Principles).ppt
PDF
PPTX
Lec 1.6 Object Oriented Programming
PDF
JAVA-INHERITANCE unitfgfjjkkkkkkkkkkkkkkkkkkkkkkkkkkkkkk
PPTX
Modules 333333333³3444444444444444444.pptx
PPTX
OOPS_Unit2.inheritance and interface objected oriented programming
PDF
Inheritance
PPTX
Inheritance Slides
PDF
Inheritance and interface
PPT
04inherit
PPTX
Chapter 3i
PPT
5. OBJECT ORIENTED PROGRAMMING USING JAVA - INHERITANCE.ppt
PDF
Java programming -Object-Oriented Thinking- Inheritance
PPTX
Java Inheritance - sub class constructors - Method overriding
OBJECT ORIENTED PROGRAMMING STRUCU2.pptx
JAVA UNIT 2 BCA students' notes IPU university
Ch5 inheritance
object oriented programming unit two ppt
‏‏‏‏‏‏oop lecture objectives will come.pdf
Chapter 5 (OOP Principles).ppt
Lec 1.6 Object Oriented Programming
JAVA-INHERITANCE unitfgfjjkkkkkkkkkkkkkkkkkkkkkkkkkkkkkk
Modules 333333333³3444444444444444444.pptx
OOPS_Unit2.inheritance and interface objected oriented programming
Inheritance
Inheritance Slides
Inheritance and interface
04inherit
Chapter 3i
5. OBJECT ORIENTED PROGRAMMING USING JAVA - INHERITANCE.ppt
Java programming -Object-Oriented Thinking- Inheritance
Ad

More from Victer Paul (13)

PDF
OOAD - UML - Sequence and Communication Diagrams - Lab
PDF
OOAD - UML - Class and Object Diagrams - Lab
PDF
OOAD - Systems and Object Orientation Concepts
PDF
Java - Strings Concepts
PDF
Java - Packages Concepts
PDF
Java - OOPS and Java Basics
PDF
Java - Exception Handling Concepts
PDF
Java - Class Structure
PDF
Java - Object Oriented Programming Concepts
PDF
Java - Basic Concepts
PDF
Java - File Input Output Concepts
PDF
Java - Arrays Concepts
PDF
Java applet programming concepts
OOAD - UML - Sequence and Communication Diagrams - Lab
OOAD - UML - Class and Object Diagrams - Lab
OOAD - Systems and Object Orientation Concepts
Java - Strings Concepts
Java - Packages Concepts
Java - OOPS and Java Basics
Java - Exception Handling Concepts
Java - Class Structure
Java - Object Oriented Programming Concepts
Java - Basic Concepts
Java - File Input Output Concepts
Java - Arrays Concepts
Java applet programming concepts

Recently uploaded (20)

PDF
MIND Revenue Release Quarter 2 2025 Press Release
PPTX
Effective Security Operations Center (SOC) A Modern, Strategic, and Threat-In...
PDF
Mobile App Security Testing_ A Comprehensive Guide.pdf
PDF
Diabetes mellitus diagnosis method based random forest with bat algorithm
PDF
Per capita expenditure prediction using model stacking based on satellite ima...
PDF
Building Integrated photovoltaic BIPV_UPV.pdf
DOCX
The AUB Centre for AI in Media Proposal.docx
PDF
How UI/UX Design Impacts User Retention in Mobile Apps.pdf
PDF
Empathic Computing: Creating Shared Understanding
PPTX
sap open course for s4hana steps from ECC to s4
PDF
Dropbox Q2 2025 Financial Results & Investor Presentation
PPTX
20250228 LYD VKU AI Blended-Learning.pptx
PPTX
ACSFv1EN-58255 AWS Academy Cloud Security Foundations.pptx
PPT
“AI and Expert System Decision Support & Business Intelligence Systems”
PDF
Architecting across the Boundaries of two Complex Domains - Healthcare & Tech...
PDF
Spectral efficient network and resource selection model in 5G networks
PDF
Agricultural_Statistics_at_a_Glance_2022_0.pdf
PPTX
Big Data Technologies - Introduction.pptx
PDF
Unlocking AI with Model Context Protocol (MCP)
PPT
Teaching material agriculture food technology
MIND Revenue Release Quarter 2 2025 Press Release
Effective Security Operations Center (SOC) A Modern, Strategic, and Threat-In...
Mobile App Security Testing_ A Comprehensive Guide.pdf
Diabetes mellitus diagnosis method based random forest with bat algorithm
Per capita expenditure prediction using model stacking based on satellite ima...
Building Integrated photovoltaic BIPV_UPV.pdf
The AUB Centre for AI in Media Proposal.docx
How UI/UX Design Impacts User Retention in Mobile Apps.pdf
Empathic Computing: Creating Shared Understanding
sap open course for s4hana steps from ECC to s4
Dropbox Q2 2025 Financial Results & Investor Presentation
20250228 LYD VKU AI Blended-Learning.pptx
ACSFv1EN-58255 AWS Academy Cloud Security Foundations.pptx
“AI and Expert System Decision Support & Business Intelligence Systems”
Architecting across the Boundaries of two Complex Domains - Healthcare & Tech...
Spectral efficient network and resource selection model in 5G networks
Agricultural_Statistics_at_a_Glance_2022_0.pdf
Big Data Technologies - Introduction.pptx
Unlocking AI with Model Context Protocol (MCP)
Teaching material agriculture food technology

Java - Inheritance Concepts

  • 1. Inheritance Dr. P. Victer Paul, Indian Institute of Information Technology Kottayam
  • 2. 2 Inheritance  Inheritance can be defined as the process where one class acquires the properties (methods and fields) of another.  The class which inherits the properties of other is known as subclass (derived class, child class) and the class whose properties are inherited is known as superclass (base class, parent class).  Therefore, a subclass is a specialized version of a superclass.  It inherits all of the instance variables and methods defined by the superclass and adds its own, unique elements. Dr. P. Victer Paul, Indian Institute of Information Technology Kottayam
  • 3. 3 Important terminologies  Super Class: The class whose features are inherited.  Sub Class: The class that inherits the other 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.  To inherit from a class, use the extends keyword. Dr. P. Victer Paul, Indian Institute of Information Technology Kottayam
  • 4. 4 Syntax  extends is the keyword used to inherit the properties of a class. Dr. P. Victer Paul, Indian Institute of Information Technology Kottayam
  • 5. 5 Syntax Dr. P. Victer Paul, Indian Institute of Information Technology Kottayam
  • 6. 6 Inheritance Demo Dr. P. Victer Paul, Indian Institute of Information Technology Kottayam
  • 7. 7 Inheritance Demo Dr. P. Victer Paul, Indian Institute of Information Technology Kottayam
  • 8. Try it!!  Although a subclass includes all of the members of its superclass, it cannot access those members of the superclass that have been declared as private.  The final Keyword  If you don't want other classes to inherit from a class, use the final keyword. 8Dr. P. Victer Paul, Indian Institute of Information Technology Kottayam
  • 9. Using super to Call Superclass  A subclass can call a constructor defined by its superclass by use of the following form of super:  arg-list specifies any arguments needed by the constructor in the superclass.  super() must always be the first statement executed inside a subclass’ constructor. 9Dr. P. Victer Paul, Indian Institute of Information Technology Kottayam
  • 10. Using super to Call Superclass 10Dr. P. Victer Paul, Indian Institute of Information Technology Kottayam
  • 11. Using super to access members  A subclass can access the data members and methods of superclass by use of the following form of super:  member can be either a method or an instance variable.  This second form of super is most applicable to situations in which member names of a subclass hide (same name) members by the same name in the superclass 11Dr. P. Victer Paul, Indian Institute of Information Technology Kottayam
  • 12. Using super to access members 12Dr. P. Victer Paul, Indian Institute of Information Technology Kottayam
  • 13. Types of Inheritance 13Dr. P. Victer Paul, Indian Institute of Information Technology Kottayam
  • 14. Single Inheritance  When a class inherits another class, it is known as a single inheritance. 14Dr. P. Victer Paul, Indian Institute of Information Technology Kottayam
  • 15. Multi level Inheritance  When there is a chain of inheritance, it is known as multilevel inheritance. 15Dr. P. Victer Paul, Indian Institute of Information Technology Kottayam
  • 16. Hierarchical Inheritance  When two or more classes inherits a single class, it is hierarchical inheritance 16Dr. P. Victer Paul, Indian Institute of Information Technology Kottayam
  • 17. Multiple Inheritance  To reduce the complexity and simplify the language, multiple inheritance is not supported in java.  Consider a scenario where A, B, and C are three classes.  The C class inherits A and B classes.  If A and B classes have the same method and you call it from child class object, there will be ambiguity to call the method of A or B class.  In java, we can achieve multiple inheritance only through Interfaces. 17Dr. P. Victer Paul, Indian Institute of Information Technology Kottayam
  • 18. Method Overriding  In a class hierarchy, when a method in a subclass has the same name and type signature as a method in its superclass,  then the method in the subclass is said to override the method in the superclass.  When an overridden method is called from within a subclass, it will always refer to the version of that method defined by the subclass.  The version of the method defined by the superclass will be hidden. 18Dr. P. Victer Paul, Indian Institute of Information Technology Kottayam
  • 19. Method Overriding How to call the show() method of Class A???? Two possible ways!!!!! 19Dr. P. Victer Paul, Indian Institute of Information Technology Kottayam
  • 20. Final Keyword  The keyword final has three uses.  First, it can be used to create the equivalent of a named constant.  The other two uses of final apply to inheritance.  Using final to Prevent Overriding  Using final to Prevent Inheritance 20Dr. P. Victer Paul, Indian Institute of Information Technology Kottayam
  • 21. Final Keyword 21Dr. P. Victer Paul, Indian Institute of Information Technology Kottayam
  • 22. Important facts about inheritance  Default superclass: Except Object class, which has no superclass, every class has one and only one direct superclass (single inheritance). In the absence of any other explicit superclass, every class is implicitly a subclass of Object class.  Superclass can only be one: A superclass can have any number of subclasses. But a subclass can have only one superclass. This is because Java does not support multiple inheritance with classes.  Inheriting Constructors: A subclass inherits all the members (fields, methods, and nested classes) from its superclass. Constructors are not members, so they are not inherited by subclasses, but the constructor of the superclass can be invoked from the subclass.  Private member inheritance: A subclass does not inherit the private members of its parent class. However, if the superclass has public or protected methods for accessing its private fields, these can also be used by the subclass. 22Dr. P. Victer Paul, Indian Institute of Information Technology Kottayam
  • 23. The instanceof Keyword  The java instanceof operator is used to test whether the object is an instance of the specified type (class or subclass or interface).  The instanceof in java is also known as type comparison operator because it compares the instance with type. It returns either true or false. 23Dr. P. Victer Paul, Indian Institute of Information Technology Kottayam
  • 24. The Object Class  There is one special class, Object, defined by Java.  All other classes are subclasses of Object.  That is, Object is a superclass of all other classes. This means that a reference variable of type  Object can refer to an object of any other class. Check what are the methods associated with Object class!!!! 24Dr. P. Victer Paul, Indian Institute of Information Technology Kottayam
  • 25. The End… 25Dr. P. Victer Paul, Indian Institute of Information Technology Kottayam