0% found this document useful (0 votes)
22 views16 pages

Unit - 006 - Inheritance and Polymorphism

The document discusses object-oriented programming concepts like inheritance, encapsulation, polymorphism, abstraction and interfaces in Java. It provides examples and explanations of each concept.

Uploaded by

Gulab Vats
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
22 views16 pages

Unit - 006 - Inheritance and Polymorphism

The document discusses object-oriented programming concepts like inheritance, encapsulation, polymorphism, abstraction and interfaces in Java. It provides examples and explanations of each concept.

Uploaded by

Gulab Vats
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
You are on page 1/ 16

Unlimited Powerful Learning

PRESENTED BY :
Mallikarjuna G D
Founder & Director
CONTENTS Unlimited Powerful Learning

 INHERITANCE
 ACCESS MODIFIERS
 POLYMORPHISM
 METHOD OVERLOADING
 METHOD OVERRIDING
 INTERFACE
OOPS Concepts Unlimited Powerful Learning

Inheritance:
• It is a mechanism in which one object acquires all the properties and behaviors of
parent object.
• Inheritance represents the IS-A relationship, also known as parent-child relationship.

Derived From Projectum


Why inheritance in java ?
• For Method Overriding (so runtime polymorphism can be achieved).
• For Code Reusability.

Syntax:
class Subclass-name extends Superclass-name
Class Superclass-name {Proicere
{ //methods and fields
//methods and fields }
}
OOPS Concepts Unlimited Powerful Learning

e
Types of Inheritance:
 Single Inheritance
 Multilevel Inheritance
 Hierarchical Inheritance

Derived From Projectum


CLASS A CLASS A CLASS A

CL
CLASS B CLASS BB CLASS B
Class CS C

Single Proicere Hierarchical


Hierarchical
CLASS C

Multilevel
05/20/2024 Multilevel 4
OOPS Concepts Unlimited Powerful Learning

Example for Single Inheritance:

class Animal {
Void eat() {
System.out.println("eating..."); }
}
class Dog extends Animal {
Derived From Projectum
void bark() {
System.out.println("barking..."); }
}
class TestInheritance {
public static void main(String args[]) {
Dog d=new Dog();
d.bark(); Proicere
d.eat();
}} /* O/P - barking…
eating… */
OOPS Concepts Unlimited Powerful Learning

Example for Multilevel and Hierarchical Inheritance:


class Animal { class Animal {
void eat() { void eat() {
System.out.println("eating..."); System.out.println("eating...");
}} }}
class Dog extends Animal { class Dog extends Animal{
void bark() { void bark() {
System.out.println("barking...");
Derived From System.out.println("barking...");
Projectum
}} }}
class BabyDog extends Dog { class Cat extends Animal{
void weep() { void meow() {
System.out.println("weeping..."); System.out.println("meowing...");
}} }}
class TestInheritance2 { class TestInheritance3{
public static void main(String args[]) { public static void main(String args[]){
BabyDog d=new BabyDog(); Proicere
Cat c=new Cat();
d.weep(); c.meow();
d.eat(); } } /* O/P - weeping… c.eat(); } } /* O/P - meowing…
eating… */ eating… */
OOPS Concepts Unlimited Powerful Learning

Encapsulation :
• Encapsulation in java is a process of wrapping data and the methods together into
a single unit.
• The Java Bean class is the example of fully encapsulated class.

Example:
Derived From Projectum
//save as Student.java
//save as Test.java
package com.pack;
package com.pack1;
public class Student {
class Test{
private String name;
public static void main(String[] args) {
public String getName() {
Student s=new Student();
Proicere
return name;
s.setName("vijay");
}
System.out.println(s.getName());
public void setName(String name) {
}
this.name=name
} // O/P - vijay
} }
OOPS Concepts Unlimited Powerful Learning

Access Modifiers:
• It specifies accessibility (scope) of a data member, method, constructor or class.

There are 4 types of access modifiers:


Derived From Projectum
 Private : Accessible only within class.
 Default : Accessible only within package.
 Protected : Accessible within package and outside the package but
through inheritance only.
 Public : Accessible everywhere. It has the widest scope among all other
modifiers. Proicere
OOPS Concepts Unlimited Powerful Learning

Polymorphism:
• It is a concept by which we can perform a single action by different ways.

Types of Polymorphism:
Derived From Projectum
 Compile time polymorphism
 Runtime polymorphism.

• It perform in java by method overloading and method overriding.

Proicere
OOPS Concepts Unlimited Powerful Learning

Method Overloading:
A class has multiple methods having same name but different in parameters. It
increases the readability of the program
Example:

class From
Derived Adder { Projectum
static int add(int a,int b) {
return a+b; }
static int add(int a,int b,int c) {
return a+b+c; }
}
class TestOverloading1 { Proicere
public static void main(String[] args) {
System.out.println(Adder.add(11,11)); // O/P – 22
System.out.println(Adder.add(11,11,11)); // O/P - 33
}}
OOPS Concepts Unlimited Powerful Learning

Method Overriding:
• Subclass provides the specific implementation of the method that has been
provided by one of its parent class.

Example:
Derived From Projectum
class Vehicle {
Void run() {
System.out.println("Vehicle is running"); }
}
class Bike2 extends Vehicle {
void run() {
Proiceresafely"); }
System.out.println("Bike is running
public static void main(String args[]) {
Vehicle obj = new Bike2();
obj.run();
} // O/P – Bike is running safely
OOPS Concepts Unlimited Powerful Learning

Abstraction:

• It is the process of hiding certain details and only show essential features of the
object.
• Abstraction in Java is achieved by using abstract class and interface.
Derived From Projectum

Abstract class in Java:


• A class that is declared as abstract is known as abstract class.
• It needs to be extended and its method implemented. It cannot be instantiated.
Example: abstract class
A{} Proicere
OOPS Concepts Unlimited Powerful Learning

Example for Abstract class:


abstract class Bank {
abstract int getRateOfInterest();
}
class SBI extends Bank {
int getRateOfInterest() {
return 9; }
}
Derived Fromextends Bank{
class PNB Projectum
int getRateOfInterest() {
return 10; }
}
class TestBank {
public static void main(String args[]) {
Bank b;
b=new SBI();
Proicere
System.out.println("Rate of Interest is: "+b.getRateOfInterest()+" %");
b=new PNB();
System.out.println("Rate of Interest is: "+b.getRateOfInterest()+" %");
}} /* O/P - Rate of Interest is: 9 %
Rate of Interest is: 10 % */
OOPS Concepts Unlimited Powerful Learning

Interface:

• It is an abstract type that is used to specify a behaviour that classes must


implement.
• Interfaces are declared using the interface keyword, and may only contain method
Derived From
signature and constant declarations. Projectum
• All methods of an Interface do not contain implementation (method bodies).

Advantages of interface:

• Used to achieve abstraction Proicere


• Support the functionality of multiple inheritance.
OOPS Concepts Unlimited Powerful Learning

Example for Interface:

interface printable{
void print();
}
Derived From Projectum
class A1 implements printable {
public void print() {
System.out.println("Hello"); }
public static void main(String args[])
{
A1 obj = new A1(); Proicere
obj.print();
} } // O/P - Hello
Operations in Stacks Unlimited Powerful Learning

Derived From Projectum

Proicere

You might also like