Polymorphism. ArrayList boxbugs; ArrayList critters; ArrayList kingCrabs; ArrayList workerants; ...
-
Upload
gwen-french -
Category
Documents
-
view
215 -
download
0
description
Transcript of Polymorphism. ArrayList boxbugs; ArrayList critters; ArrayList kingCrabs; ArrayList workerants; ...
![Page 1: Polymorphism. ArrayList boxbugs; ArrayList critters; ArrayList kingCrabs; ArrayList workerants; (i).act(); critters.get(i).act(); kingCrabs.get(i).act();](https://reader036.fdocuments.us/reader036/viewer/2022082621/5a4d1b767f8b9ab0599b76b5/html5/thumbnails/1.jpg)
Polymorphism
![Page 2: Polymorphism. ArrayList boxbugs; ArrayList critters; ArrayList kingCrabs; ArrayList workerants; (i).act(); critters.get(i).act(); kingCrabs.get(i).act();](https://reader036.fdocuments.us/reader036/viewer/2022082621/5a4d1b767f8b9ab0599b76b5/html5/thumbnails/2.jpg)
ArrayList<BoxBug> boxbugs;ArrayList<Critter> critters;ArrayList<KingCrab> kingCrabs;ArrayList<WorkerAnt> workerants;
boxbugs.get(i).act();critters.get(i).act();kingCrabs.get(i).act();workerants.get(i).act();
ArrayList<Actor> actors;
actors.get(i).act();
Java correctly decides which type
of actor it is and calls the
corresponding act() method. All
actors act differently, even though
they are all being stored as plain
old Actors.
![Page 3: Polymorphism. ArrayList boxbugs; ArrayList critters; ArrayList kingCrabs; ArrayList workerants; (i).act(); critters.get(i).act(); kingCrabs.get(i).act();](https://reader036.fdocuments.us/reader036/viewer/2022082621/5a4d1b767f8b9ab0599b76b5/html5/thumbnails/3.jpg)
What’s required for polymorphism to work? Actor
Bug
BoxBug ZBug
Critter
RockHound
Actor a = new BoxBug(4);a.act();
act();
act();
act(); act();
act();
act();
getActors()
getActors()
BoxBugs act() called
Actor a = new RockHound();a.getActors();
No getActors() method!!!!
ERROR!!!