Unformatted text preview: ds can only be accessed from within
the class and subclasses of it
the Private attributes/methods can only be accessed from the class
itself Public attributes/methods can be accessed from anywhere
x How multiple inheritance is handled depends on the
How language and the context
language In C++ can be controlled by inserting or not the keyword “virtual”
145 Design question: inheritance vs. attribute?
x When designing a project, a question often occurs Do I make B inherit from A? Or, do I add an object of type A as attribute of B?
x This can be solved for instance with the “is a” test
x Both choices can lead to a valid implementation But design may be less clear in one case vs. the other
x Usually, both are needed (eg, B : A, and B has as attribute
Usually, an object of type C)
an An attribute is a set of properties unique for an object
146 A bit of (modern) history…
x It all started with punch cards
x As early as 19th century
x Picture: IBM machine, 1936
x At start: storage, basic processing
x Programming was hard!
x A good quote (IBM Manual, 1925)
: All parts should go together without forcing. You must remember that
the parts you are reassembling were disassembled by you. Therefore,
if you can’t get them together again, there must be a reason. By all
means, do not use a hammer.
147 EDVAC (1949)
x Ellectronic Diiscrete Variable Automatic Computer
ectronic screte ariable utomatic
x Binary serial computer with add/sub/mul/div Memory: 5.5kB Addition: ~1ms, multiplicatio...
View Full Document
- Fall '00
- int foo, foo