[Skip to Body]
Primary:
[Front Door]
[Current]
[Glance]
-
[Honesty]
[On Teaching and Learning]
Groupings:
[EBoards]
[Examples]
[Exams]
[Handouts]
[Homework]
[Labs]
[Outlines]
[Readings]
[Reference]
Misc:
[SamR]
[Java 1.5 API]
[Espresso]
[TAO of Java]
[CS152 2004F]
Back to Algorithm Analysis (4). On to Linear Structures.
Held: Friday, 4 November 2005
Summary: Today we consider inheritance, a key aspect of object-oriented design.
Related Pages:
Assignments
Overview:
Surrounded object from TextLines, from HorizontallyComposed blocks of text, and from anything else that implements TextBlock
Surrounded once and it works for all of the above.
TextBlock with something like the following
for (int i = 0; i < tb.getLines(); i++) pen.println(tb.getLine(i));
TextBlock. That seems wasteful.
Point classes, all of them might share x and y fields.
subclass.
superclass.
multiple inheritance.
ColoredPoints, which are points that add colors.
Integer is a Number.
extends keyword (rather than some variant of is-a.
public class ColoredPoint
extends Point
{
} // class ColoredPoint
public class Integer
extends Number
{
...
} // class Integer
DrawableObject obj = new Circle(); Number n = new Integer(5);
public void drawWithStrangeColors(DrawableObject obj) {
...
} // drawWithStrangeColors(DrawableObject)
...
public Number add(Number val1, Number val2) {
...
} // add(Number,Number)
...
drawWithStrangeColors(new Circle());
...
Number result = add(new Integer(5), new Integer(2));
super(parameters) as the first line of your
subclass constructor.
public interface NewInterface
extends OldInteger
{
...
} // interface NewInterface
Back to Algorithm Analysis (4). On to Linear Structures.
[Skip to Body]
Primary:
[Front Door]
[Current]
[Glance]
-
[Honesty]
[On Teaching and Learning]
Groupings:
[EBoards]
[Examples]
[Exams]
[Handouts]
[Homework]
[Labs]
[Outlines]
[Readings]
[Reference]
Misc:
[SamR]
[Java 1.5 API]
[Espresso]
[TAO of Java]
[CS152 2004F]
Disclaimer:
I usually create these pages on the fly
, which means that I rarely
proofread them and they may contain bad grammar and incorrect details.
It also means that I tend to update them regularly (see the history for
more details). Feel free to contact me with any suggestions for changes.
This document was generated by
Siteweaver on Tue Dec 6 09:47:38 2005.
The source to the document was last modified on Thu Aug 25 16:15:09 2005.
This document may be found at http://www.cs.grinnell.edu/~rebelsky/Courses/CS152/2005F/Outlines/outline.37.html.
You may wish to
validate this document's HTML
;
;
Check with Bobby