1 / 40

Object-Oriented Programming (OOP) Lecture No. 5

Object-Oriented Programming (OOP) Lecture No. 5. Multiple Inheritance. We may want to reuse characteristics of more than one parent class. Example – Multiple Inheritance. Mermaid. Example – Multiple Inheritance. Woman. Fish. Mermaid. Example – Multiple Inheritance. Amphibious Vehicle.

gagan
Télécharger la présentation

Object-Oriented Programming (OOP) Lecture No. 5

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Object-Oriented Programming (OOP)Lecture No. 5 Downloaded From: www.bsit.zxq.net

  2. Multiple Inheritance • We may want to reuse characteristics of more than one parent class Downloaded From: www.bsit.zxq.net

  3. Example – Multiple Inheritance Mermaid Downloaded From: www.bsit.zxq.net

  4. Example – Multiple Inheritance Woman Fish Mermaid Downloaded From: www.bsit.zxq.net

  5. Example – Multiple Inheritance Amphibious Vehicle Downloaded From: www.bsit.zxq.net

  6. Example – Multiple Inheritance Vehicle Land Vehicle Water Vehicle Car Amphibious Vehicle Boat Downloaded From: www.bsit.zxq.net

  7. Problems with Multiple Inheritance • Increased complexity • Reduced understanding • Duplicate features Downloaded From: www.bsit.zxq.net

  8. Problem – Duplicate Features • Which eat operation Mermaid inherits? Woman Fish eat … eat … Mermaid Downloaded From: www.bsit.zxq.net

  9. Solution – Override the Common Feature Woman Fish eat … eat … Mermaid Invoke eat operation of desired class eat … Downloaded From: www.bsit.zxq.net

  10. Problem – Duplicate Features (Diamond Problem) Vehicle • Which changeGear operation Amphibious Vehicle inherits? changeGear Land Vehicle Water Vehicle Car Amphibious Vehicle Boat Downloaded From: www.bsit.zxq.net

  11. Solution to Diamond Problem • Some languages disallow diamond hierarchy • Others provide mechanism to ignore characteristics from one side Downloaded From: www.bsit.zxq.net

  12. Association • Objects in an object model interact with each other • Usually an object provides services to several other objects • An object keeps associations with other objects to delegate tasks Downloaded From: www.bsit.zxq.net

  13. Kinds of Association • Class Association • Inheritance • Object Association • Simple Association • Composition • Aggregation Downloaded From: www.bsit.zxq.net

  14. Simple Association • Is the weakest link between objects • Is a reference by which one object can interact with some other object • Is simply called as “association” Downloaded From: www.bsit.zxq.net

  15. Kinds of Simple Association • w.r.t navigation • One-way Association • Two-way Association • w.r.t number of objects • Binary Association • Ternary Association • N-ary Association Downloaded From: www.bsit.zxq.net

  16. One-way Association • We can navigate along a single direction only • Denoted by an arrow towards the server object Downloaded From: www.bsit.zxq.net

  17. Example – Association • Ali lives in a House Ali lives-in House 1 1 Downloaded From: www.bsit.zxq.net

  18. Example – Association • Ali drives his Car Ali drives Car 1 * Downloaded From: www.bsit.zxq.net

  19. Two-way Association • We can navigate in both directions • Denoted by a line between the associated objects Downloaded From: www.bsit.zxq.net

  20. Example – Two-way Association • Employee works for company • Company employs employees Employee works-for Company * 1 Downloaded From: www.bsit.zxq.net

  21. Example – Two-way Association • Yasir is a friend of Ali • Ali is a friend of Yasir Yasir friend Ali 1 1 Downloaded From: www.bsit.zxq.net

  22. Binary Association • Associates objects of exactly two classes • Denoted by a line, or an arrow between the associated objects Downloaded From: www.bsit.zxq.net

  23. Example – Binary Association • Association “works-for” associates objects of exactly two classes Employee works-for Company * 1 Downloaded From: www.bsit.zxq.net

  24. Example – Binary Association • Association “drives” associates objects of exactly two classes Ali drives Car 1 * Downloaded From: www.bsit.zxq.net

  25. Ternary Association • Associates objects of exactly three classes • Denoted by a diamond with lines connected to associated objects Downloaded From: www.bsit.zxq.net

  26. Example – Ternary Association • Objects of exactly three classes are associated Student Teacher 1 * * Course Downloaded From: www.bsit.zxq.net

  27. Example – Ternary Association • Objects of exactly three classes are associated Project Language * * 1 Person Downloaded From: www.bsit.zxq.net

  28. N-ary Association • An association between 3 or more classes • Practical examples are very rare Downloaded From: www.bsit.zxq.net

  29. Composition • An object may be composed of other smaller objects • The relationship between the “part” objects and the “whole” object is known as Composition • Composition is represented by a line with a filled-diamond head towards the composer object Downloaded From: www.bsit.zxq.net

  30. Example – Composition of Ali Head 1 Arm Leg Ali 2 2 1 Body Downloaded From: www.bsit.zxq.net

  31. Example – Composition of Chair Back 1 Chair 1 2 4 Arm Seat Leg Downloaded From: www.bsit.zxq.net

  32. Composition is Stronger • Composition is a stronger relationship, because • Composed object becomes a part of the composer • Composed object can’t exist independently Downloaded From: www.bsit.zxq.net

  33. Example – Composition is Stronger • Ali is made up of different body parts • They can’t exist independent of Ali Downloaded From: www.bsit.zxq.net

  34. Example – Composition is Stronger • Chair’s body is made up of different parts • They can’t exist independently Downloaded From: www.bsit.zxq.net

  35. Aggregation • An object may contain a collection (aggregate) of other objects • The relationship between the container and the contained object is called aggregation • Aggregation is represented by a line with unfilled-diamond head towards the container Downloaded From: www.bsit.zxq.net

  36. Example – Aggregation Bed 1 Chair Room Table * 1 1 Cupboard Downloaded From: www.bsit.zxq.net

  37. Example – Aggregation Garden Plant * Downloaded From: www.bsit.zxq.net

  38. Aggregation is Weaker • Aggregation is weaker relationship, because • Aggregate object is not a part of the container • Aggregate object can exist independently Downloaded From: www.bsit.zxq.net

  39. Example – Aggregation is Weaker • Furniture is not an intrinsic part of room • Furniture can be shifted to another room, and so can exist independent of a particular room Downloaded From: www.bsit.zxq.net

  40. Example – Aggregation is Weaker • A plant is not an intrinsic part of a garden • It can be planted in some other garden, and so can exist independent of a particular garden Downloaded From: www.bsit.zxq.net

More Related