basics of inheritance .22

Post on 16-Apr-2017

434 Views

Category:

Documents

0 Downloads

Preview:

Click to see full reader

TRANSCRIPT

1

Basics of Inheritance

http://improvejava.blogspot.in/

Objectives

On completion of this period, you would be able to learn

• Inheritance• Inheritance basics• Visibility modifiers

http://improvejava.blogspot.in/

Recap

In the previous lesson, you have learnt • Command-line arguments

http://improvejava.blogspot.in/

http://improvejava.blogspot.in/

• Inheritance is process by which one class gets the

properties from an existing class

• Object-oriented programming allows classes to inherit

• Commonly used state and behavior from other

classes

• Inheritance is one of the principles of object oriented

programming

• Benefit of inheritance is the software reuse

Inheritance

Inheritance Basics• Inheritance allows a software developer to

derive a new class from an existing one• The existing class is called the parent class or

superclass• The derived class is called the child class or

subclass• Creates an is-a relationship

The subclass is a more specific version of the original

5http://improvejava.blogspot.in/

6

• In Java a class that is inheriting is called a super class

• A class that is inherited is called sub class

• Sub class is a specialized version of super class

• Sub class inherits all instance variables and methods

defined by super class and can have its own elements

• In Java one direct superclass, and each superclass has

the potential for an unlimited number of subclasses

http://improvejava.blogspot.in/

Inheritance Basics contd..

• In Fig. 22.1 Book is the existing class• Dictionary and Novel are

sub classes of Book• Mystery and Romance are sub classes of Novel

Book

NovelDictionary

Mystery Romance

7

Fig 22.1 Book inheritance

Inheritance Basics contd..

http://improvejava.blogspot.in/

http://improvejava.blogspot.in/

Fig. 22.2 Bicycle example

Discussion

• What are the super and sub classes in Fig. 22.2

• Super class

• Sub classes

Bicycle

MountBike RoadBike TandemBike

http://improvejava.blogspot.in/

Object

Class A Class D

Class B Class CClass E

Fig. 22.3 Another example

Discussion contd..

• What are the super and sub classes in Fig. 22.3

• Super classes

• Sub classes

Object, Calls A, Class D

Class A, Class B, Calss C, Class C, Class D

http://improvejava.blogspot.in/

Syntax

• To inherit a class from another class use keyword

“extends”Syntax

class subclass-name extends superclass-name {( body of the class )

}If a class B is inherited from class A class B extends A // A inherits B

// Super class –A, Subclass- B

http://improvejava.blogspot.in/

• Consider the above Bicycle example • Using the above syntax the inheritance can be shown as

below

class MountainBike extends Bicycle { // new fields and methods defining a mountain bike would go here

}

Syntax contd...

http://improvejava.blogspot.in/

Example

class A {

int i,j;

void showij() {

System.out.println(“ i and j :” + I + “ “ + j);

}

}

http://improvejava.blogspot.in/

class B extends A {// creating subclass B from super class A

int k;

void showk() {

System.out.println(“ k:” +k);

}

void sum() {

System.out.println(“ i + j + k:” ( i+j+k));

}

}

Example contd..

http://improvejava.blogspot.in/

class SimpleInheritance {

public static void main( String args[]) {

A superOb = new A();

B subOb = new B();

superOb.i = 10;// super class may be used by itself

superOb.j = 20;

System.out.println( “ Contents of superOb:”);

superOb.showij();

System.out.println();

Example contd..

http://improvejava.blogspot.in/

subOb.i = 7; // sub class has access to all public members

subOb.j = 8; // of its super class

subOj.k = 9;System.out.println(“ Contents of subOj:” );subOb.showij();subOj.showk();System.out.println();System.out.println( “ sum of i,j and k in

subOb:”);subOb.sum();

} }

Example contd..

http://improvejava.blogspot.in/

Contents of superOb :

i and j : 10 20

Contents of subOb :

i and j : 7 8

k : 9

sum of I,j and k in subOb :

i + j + k: 24

Output

17

Some Inheritance Details

• An instance of a child class does not rely on an instance of a parent class• Hence we could create a Dictionary object without

having to create a Book object first

• Inheritance is a one-way street• The Book class cannot use variables or methods

declared explicitly in the Dictionary class

http://improvejava.blogspot.in/

Summary

• In this class, we have discussed• Inheritance• Inheritance principle• Inheritance syntax• Super class• Sub class• Public, private and protected modifiers

http://improvejava.blogspot.in/

Quiz

http://improvejava.blogspot.in/

1. A class which is inherited from other class is called a) Super classb) Sub classc) Anonymous classd) Object

Quiz contd...

2. A class which used to inherits a class is called a) Sub classb) Super classc) Anonymous classd) object

http://improvejava.blogspot.in/

3. What is the keyword used to inherit a class

a) create

b) new

c) this

d) extends

http://improvejava.blogspot.in/

Quiz contd...

22

4.Public variables volatile the principle ofa) Polymorphismb) Encapsulationc) Inheritance d) Overloading

Quiz contd...

Quiz Contd..

5. Variables and methods declared with following are inherited

a) private b) public c) protected d) abstract

http://improvejava.blogspot.in/

Frequently Asked Questions• What is inheritance ?

• Mention the key word to inherit a class from others

• What is super class ?

• What is sub class ?• Write about public modifier• Write about private modifier• What protected modifier• Write a program in Java using modifiers

• Write a program in Java for inheriting a class from others

http://improvejava.blogspot.in/

top related