1. > REPLACE THIS LINE WITH YOUR PAPER IDENTIFICATION NUMBER (DOUBLE-CLICK HERE TO EDIT) <
Abstract—Object-Oriented Programming is substitute for
other procedural languages such as C, BASIC, FORTAN,
Pascal, and so on. Object oriented programming is used to
resolve the issue in procedural programming. In object
oriented programming, the main section in a program are
classes,as a substitute of procedures. The object-oriented
passage lets you setup classes and objects that standard real
world objects which are one of the main perceptions of OOP,
other than these Inheritance that allow classes to inherit
commonly used phase and action from other classes an reuse the
premises of the existing one .The old one is named as Parent or
Base class on the other hand newly created class is known as
Child or Derived Class.
Further we will discuss Inheritance in detail.
Index Terms—OOP, Objects, Classes, Inheritance, Parent
class, Derived class , Types of Inheritance .
I.INTRODUCTION
Object oriented programming is a way of solving
complicated problems by breaking them into minor problems
using objects. Before OOP, there was procedural
programming, it was a long list of instructions. While, OOP
is all about creating objects that can combine with each other,
this makes it easier to develop programs in OOP so we can
understand the relationship between them easily.In OOP we
write programs using classes and objects using features of
OOP such as data hiding, inheritance and Polymorphism.
We will discuss about one of the feature that is
inheritance. Inheritance has Parent & Child class in which
child class inherit features of parent class as well as they have
their own properties.A class that inherits another class is
known as child class, it is also known as derived class or
subclass.The class that is being inherited by other class is
known as parent class, super class or base class.
Syntax of Inheritance:
class parent_class{
//Body of parent class};
class child_class : access_modifier parent_class{
//Body of child class};
II.FEATURES
High level languages such as COBOL, Pascal and C, is
commonly known as procedural languages. In the
procedural languages, program is distributed into small
sections and then combined to form a complete program.
OOP is very trendy among the planners. It efforts to plan
programs that comforts the user. Programming language
over the traditional Procedural Programming have many
advantages such as :
Data Hiding: Programmer can protect their data and
protected data cannot be use anywhere in the program.
Polymorphism: In OOP, Polymorphism is the
capability of object to behave in many ways in order to
answer a function of the same name. The user doesn't
have to know the correct type of object.
Reusability: OOP provides ways of reusing data and
code
Inheritance: It is a programming technique that is
used to reuse an existing class to built a new class. The
new class inherits all the properties of the existing class
and the new class also has its own properties.When
derived class inherits the data member and member
function of base class, we don't need to write the same
code again in derived class. This makes it easier to
reuse the code.
New classes can be built from the existing classes. It means
that we can add additional features to an existing class
without
modifying it. The new class is referred as derived class or
subclass and the original class is known as base classes or
super
class.
III. IMPORTANCE
In early1960s OOP has been used . Planner prefers OOP on
different programming languages. As OOP introduced
important concepts that are today an important part of OOP,
sbjects , classes and inheritance.Because OOP languages use
such a strong system, derived classes can be written by
simply inheriting from the base class. This can be done in a
way that will allow the new class to hold all the data members
and member functions without having to deal with the old
code. This is the foundation of inheritance. Inheritance will
occur when an object inherits data from its parent. Each
superclass will be composed of subclasses, and plays an
important role in OOP.
Object-Oriented Programming and InheritanceKanwal Hira(279), Arif Huria(351)
Bilquis Postgraduate College for women, PAF Nur khan (Chaklala)
1
2. > REPLACE THIS LINE WITH YOUR PAPER IDENTIFICATION NUMBER (DOUBLE-CLICK HERE TO EDIT) <
IV. FACTORS
Objects: An object represent a body in the real world
such as people , things , or concepts.An object consists
of properties that are the characteristic of an object and
functions that are the actions that can be performed by
an object.
Classes: Classes are the combinations of objects.It is
used to define the characteristics of objects.OOP
provides the efficiency to built classes for creating
different objects.All data member and member functions
of an object are specified in classes.
Inheritance: In OOP that is well structured language,
has an important concept that can make the difference
between a good programming language and a great
programming language. When code is written in parent
class it can be reused in child class.We don’t need to
write the code again and again.Inheritance can make the
programs more reliable and accurate and there is less
chance of making error.It can also save our time and
effort.
V. TYPES OF INHERITANCE
Following are the some types of inheritence:
i) Single Inheritance
ii) Multiple Inheritance
iii) Multilevel Inheritance
iv) Hierarchical Inheritance
v) Hybrid Inheritance
1. Single Inheritance
In single inheritance, a single child class is inherited
by a single parent class.child class will inherit all the
data members and member functions of parent class as
well as it has its own data members and member
functions.
2. Multiple Inheritance
In multiple inheritance, a single child is inherited by a
multiple parent class or multiple child classes are inherited by
a single parent class.Child class can inherit all the data
members and functions of all parent classes with some of its
own data members and member functions
3. Multilevel Inheritance
In multilevel inheritance, a class is derived from another
class.The member of base class are inherited to the derived
class and the member of derived class are inherited to the
grand derived class.In this way, the member of base class and
derived class are combined in grand derived class
4. Hierarchical Inheritance
When several classes are derived from common base class it
is called hierarchical inheritance.In OOP hierarchical
inheritance, the feature of the base class is inherited onto
more than one sub-classes
2
3. > REPLACE THIS LINE WITH YOUR PAPER IDENTIFICATION NUMBER (DOUBLE-CLICK HERE TO EDIT) <
5. Hybrid Inheritance
Hybrid inheritance is a combination of multiple inheritance
and multilevel inheritance. A class is derived from two classes
as in multiple inheritance. However, one of the parent classes
is not a base class. It is a derived class.
VI. CONCLUSIONS
Now a days, OOP is playing an important role in
programming environment. The member of OOP play a very
important role in the advancement of the language. Object,
which is a necessary part of OOP,consists of properties that
are the characteristic of an object and functions that are the
actions that can be performed by an object. Class; that is the
combination of objects. Inheritance, is an important concept
of OOP that makes a program very easy, more reliable and
more efficient.It gave the concept of reusability , saves time
and efforts .Developers prefer OOP on other languages, that’s
why it is increasing usage in every programming section.
VII. REFERENCES
[1] [ES94b] E. Sandvad: An Object-Oriented CASE Tool, in [KLMM94].
[2] [Nau63]: P. Naur: Revised Report on the Algoritmic Language ALGOL
60 Comm. ACM, 6(1), pp. 1-17, Jan. 1963.
[3] [Wir71] N. Wirth: The Programming Language Pascal, Acta Informatica,
1, pp. 35-62, 1971.
[4] [GT94] K. Grønbœk, R. Trigg: Design Issues for a Dexter based
Hypermedia System, Comm. ACM , 37(2), Feb. 1994.
[5] [Mey88] B. Meyer: Object-Oriented Software Construction, Prentice-Hall,
1988.
[6] [RC86] J. Rees, W. Clinger (eds.), Revised Report on the Algoritmic
Language Scheme, MIT, TR No. 174, August 1986.
[7] [Kee89] S. E. Keene: Object-Oriented Programming in Common Lisp.
Addison Wesley, 1989.
[8] [US87] D. Ungar, R.B. Smith: SELF - The Power of Simplicity, in Proc.
OOPSLA'87, Orlando, FL, 1987.
[9] [BC87] E. Blake, S. Cook: On Including Part Hierarchies in Object-
Oriented Languages, with an Implementation in Smalltalk, in Proc.
ECOOP'87, Springer LNCS Vol. 276, Paris, 1987.
[10] C. J. Kaufman, Rocky Mountain Research Lab., Boulder, CO, private
Scharli, N. et al. ,Traits: Composable units of Behaviour, ECOOP 2003–
Object-Oriented Programming, p.327–339, 2003.
[11] Schärli, N. et al ,Traits: Composable Units of Behavior. Technical Report,
2743, pp.248-274, November 2002.
[12] Nutter, C. et al., Using JRuby, Pragmatic Programmers, 2010.
[13] Pierce, B.C., Types and Programming Languages, The MIT Press, 2002.
[14] Taivalsaari, A., On the notion of inheritance. ACM Computing Surveys,
28(3), pp.438-479, 1996.
[15] Borning, A.H. & Ingalls, D.H.H., Multiple Inheritance in Smalltalk-80. In
Proceedings at the National Conference on AI. pp. 234-237, 1982.
[16] Keene, S.E., Object-Oriented Programming in Common-Lisp, Addison
Wesley, 1989.
[17] Meyer, B., Object-Oriented Software Construction, Second Edition,
Prentice Hall PTR, 1997.
[18] Schaffert, C. et al., An Introduction to Trellis/Owl, ACM Sigplan Notices.
pp. 9-16, 1986.
[19] Flatt, M., Krishnamurthi, S. & Felleisen, M., Classes and Mixins,
Conference Record of POPL98 The 25th ACM SIGPLANSIGACT
Symposium on Principles of Programming Languages, ACM Press, pp.
171-183, 1998.
[20] Mens, T. & Van Limberghen, M., Encapsulation and Composition as
Orthogonal Operators on Mixins: A Solution to Multiple Inheritance
Problems , Object Oriented Systems, 3(1), pp.1-30, 1996.
[21] Moon, D.A., Object-Oriented Programming with Flavors, Proceedings of
the Conference on Object Oriented Programming Systems Languages and
Applications OOPSLA. ACM Press, pp. 1-8.
[22] David A. Moon. Object-oriented programming with flavors. In Proceedings
OOPSLA 86, ACM SIGPLAN Notices, volume 21, pages 18,November
1986.
[23] [Sav11b] A. Savinov, Concept-oriented model: Extending objects with
identity, hierarchies and semantics. Computer Science Journal of Moldova
(CSJM), 19(3), 254-287, 2011.
[24] [Sav12a] A. Savinov, Concept-Oriented Programming: Classes and
Inheritance Revisited. 7th International Conference on Software Paradigm
Trends (ICSOFT 2012), 381-387, 2012.
[25] [Sav12b] A. Savinov, Concept-oriented model: Classes, hierarchies and
references revisited. Journal of Emerging Trends in Computing and
Information Sciences, 3(4), 456-470, 2012.
[26] [Sav14a] Savinov, A. Concept-oriented query language. In J. Wang (Ed.),
Encyclopedia of Business Analytics and Optimization, IGI Global, 512-
522, 2014.
[27] [Sav14b] Savinov, A. Concept-oriented model. In J. Wang (Ed.),
Encyclopedia of Business Analytics and Optimization, IGI Global, 502-
511, 2014.
[28] [Sch08] H. Schippers, D. Janssens, M. Haupt, R. Hirschfeld. Delegation-
based semantics for modularizing crosscutting concerns, ACM SIGPLAN
Notices, 43(10), 525-542, 2008
[29] [Ste87] L.A. Stein, Delegation Is Inheritance. In Proc. OOPSLA'87, ACM
SIGPLAN Notices, 22(12), 138-146, 1987.
[30] [Ung09] D. Ungar, Self and Self: Whys and Wherefores, Stanford
Computer Systems Colloquium, September 30, 2009.
3