VerticalPercolator
class that models the behavior of a solid material. Objects of this
class percolate straight down, but they do not percolate left or
right. The goal of today's Mini-Lab is to develop
a GravitationalPercolator
class. Objects of this class
will percolate down, left and right. This could be used as a model of a
fluid flowing down through down through a medium.
As a first step, you will make a small change to
the VerticalPercolator
class that will make it easier to
adapt that code to this new problem. Currently,
the getPercolationLocation
method returns a single object
of type Location
. That design makes sense for
the VerticalPercolator
because an object of that class
can percolate to at most one location. However that approach won't
work for our GravitationalPercolator
.
Exercise 1 — Modifying VerticalPercolator:
|
Using the modified
VerticalPercolator
class as a starting
point, it will be straightforward to implement the
GravitationalPercolator
.
Exercise 2 — Creating GravitationalPercolator:
|
At this point your
VerticalPercolator
and GravitationalPercolator
classes are nearly
identical. One of the goals of the next Mini-Lab will be to factor out
the common code and move it into a common superclass.
The work you have done for this mini-lab will be part of the Percolation programming project, so you don't need to submit anything at this point.