CISC 181
Inheritance
Prof. Christopher Rasmussen
March 20, 2015
Review: What's a Class?
What's a Class?
Fish
What's a Class?
Animal
Fish
The Idea of Related Classes
The Idea of Related Classes
The Idea of Related Classes
Derived Classes
public class Animal { … }
public class Fish extends Animal { … }
Derived Classes
public class Animal { … }
public class Fish extends Animal { … }
public class Bird extends Animal { … }
Derived Classes: Terminology
public class Salmon extends Fish { … }
Derived Classes: Terminology
public class Salmon extends Fish { … }
Derived Class Facts
public class Animal {
Color bodyColor;
}
public class Fish extends Animal {
Color tailColor;
}
myFish.bodyColor = Color.SILVER;
myFish.tailColor = Color.RED;
Derived Class Facts
public class Animal {
Color bodyColor;
}
public class Fish extends Animal {
Color tailColor;
}
myFish.bodyColor = Color.SILVER;
myFish.tailColor = Color.RED;
myAnimal.tailColor = Color.BLUE;
Inheritance: Access
Derived Classes: Overriding
The Object class
The Object class
Polymorphism
Polymorphism
super
super
Overriding with super
void grow(double dw) {
super.grow(dw); // superclass's grow()
}
Overriding with super
void grow(double dw) {
super.grow(dw); // superclass's grow()
if (weight >= WEIGHT_THRESH) {
bodyColor = Color.DARK_GRAY;
}
}
super