CSC/ECE 517 Summer 2008/wiki2 8 Inh-Del: Difference between revisions
No edit summary |
No edit summary |
||
Line 2: | Line 2: | ||
==Inheritance - delegation== | ==Inheritance - delegation== | ||
Inheritance and delegation plays a very important role in object-oriented languages.Both of the technique | Inheritance and delegation plays a very important role in object-oriented languages.Both of the technique facilitates the reuse of code that exist in another class. | ||
== Inheritance== | == Inheritance== | ||
Hierarchical code structure, which keep most of the common code at the top most hierarchy ,is called inheritance.The top most class is called as the parent class, base class or a superclass.The classes derived from the parent class are known as child classes or subclasses.The code can be reused up to lower levels of the hierarchy. Classes get more specialized as you move toward the bottom of the hierarchy.The subclasses inherits all the functionality of the superclass class.The one of the most common reason of using inheritance is | Hierarchical code structure, which keep most of the common code at the top most hierarchy ,is called inheritance.The top most class is called as the parent class, base class or a superclass.The classes derived from the parent class are known as child classes or subclasses.The code can be reused up to lower levels of the hierarchy. Classes get more specialized as you move toward the bottom of the hierarchy.The subclasses inherits all the functionality of the superclass class.The one of the most common reason of using inheritance is | ||
to specialise the existing classes or objects. Inheritance is static by nature and determined at compile time | to specialise the existing classes or objects. Inheritance represent the is-a relationship between classes.Inheritance is static by nature and determined at compile time. | ||
== Delegation== | == Delegation== | ||
A technique,which provides the functionality of implementation of a particular interface to a field or expression is called delegation.Delegation passes a duty off to someone else. | A technique,which provides the functionality of implementation of a particular interface to a field or expression is called delegation.Delegation passes a duty off to someone else. | ||
It can be define in terms of objects ,where one object forwards certain fuction calls to another object, called its delegate.All languages does not suppport direct delegation and it does not provide the feature of dynamic polymorphism. Delegation is a very powerful reuse technique.The most important feature of delegation is ,run time flexibility.The delegates can be changed at run time . | It can be define in terms of objects ,where one object forwards certain fuction calls to another object, called its delegate.All languages does not suppport direct delegation and it does not provide the feature of dynamic polymorphism. Delegation is a very powerful reuse technique.The most important feature of delegation is ,run time flexibility.The delegates can be changed at run time . | ||
==Uses of Inheritance== |
Revision as of 11:25, 22 June 2008
Inheritance vs Delagation
Inheritance - delegation
Inheritance and delegation plays a very important role in object-oriented languages.Both of the technique facilitates the reuse of code that exist in another class.
Inheritance
Hierarchical code structure, which keep most of the common code at the top most hierarchy ,is called inheritance.The top most class is called as the parent class, base class or a superclass.The classes derived from the parent class are known as child classes or subclasses.The code can be reused up to lower levels of the hierarchy. Classes get more specialized as you move toward the bottom of the hierarchy.The subclasses inherits all the functionality of the superclass class.The one of the most common reason of using inheritance is to specialise the existing classes or objects. Inheritance represent the is-a relationship between classes.Inheritance is static by nature and determined at compile time.
Delegation
A technique,which provides the functionality of implementation of a particular interface to a field or expression is called delegation.Delegation passes a duty off to someone else. It can be define in terms of objects ,where one object forwards certain fuction calls to another object, called its delegate.All languages does not suppport direct delegation and it does not provide the feature of dynamic polymorphism. Delegation is a very powerful reuse technique.The most important feature of delegation is ,run time flexibility.The delegates can be changed at run time .