Inheritance Examples

Post on 24-Feb-2016

36 views 0 download

Tags:

description

Inheritance Examples. Real-world Examples: Animals. Source code: http://en.wikipedia.org/wiki/Polymorphism_in_object-oriented_programming. Animal. Dog. Cat. Example #2: Timepieces. Multiple inheritance. A derived class can have more than one base class - PowerPoint PPT Presentation

Transcript of Inheritance Examples

1

Inheritance Examples

2

Real-world Examples: Animals

Source code: http://en.wikipedia.org/wiki/Polymorphism_in_object-oriented_programming

Animal

Dog Cat

3

Example #2: Timepieces

4

Multiple inheritance– A derived class can have more than one base class– Java does not support it – uses “interface” instead.

5

Example #3: Shapes

Basic Shape

Circle Polygon Ellipse

Square HexagonRectangle

6

Example #4: Wireless TelephonyMobile initiated

message

Registration Call Processing SMS

Origination Page Response

7

Value of inheritance?

• Helps us to break software into manageable pieces

• Existing classes can be morphed to design new classes – code reuse

• Enables us to group different types of objects together and do some action on all of them.

8

Inheritance Examples in Java and C++

9

Back to Example #1: Animals

Animal

Dog Cat

Want to group them together &make them talk?

10

Concepts

• Static binding vs. dynamic binding• Polymorphism using virtual methods• Abstract base class• Ability of base class pointers to point to

derived class objects

11

Add Human?

Animal

Dog Cat

Human

Want to group them together &make them talk?

12

C++

Animal

Dog Cat

Human

AnimalActions

13

Java: Interface

Animal

Dog Cat

Human

AnimalActions

14

Example from Wiki:Bad use of Inheritance

Parrot Human

Whistler

15

Example from Wiki

WhistlerParrot Human

16

Concepts

• Interface

17

C++

Animal

Dog Cat Human

AnimalActions

18

Java: Interface

Animal

Dog CatHuman

AnimalActions

19

Inheritance Examples in Java and C++

20

References• http://en.wikipedia.org/wiki/Polymorphism_in_object-oriented_programming -

Animals : Inheritance coding examples in Java/C++/…• http://en.wikipedia.org/wiki/Interface_%28Java%29 – Java Interfaces

21