The assignment is to create Ballworld implementation where the ball
implementations are sub-classes of an abstract ball.
See tjhe
on-line demo of the inheritance-based Ballworld. You are to replicate
all the functionality of the demo.
Requirements:
- Other than than the code for the individual concrete ball
subclasses, no code in the rest of the system can reference a ball
sub-class.
- Balls should bounce correctly off the sides of a panel on the main
frame, not the entire frame. Balls should bounce from their edges, not
their middles or only one side.
- The application should be able to dynamically load any ball
sub-class, given its fully qualified name at run-time (i.e. typed into a
text field).
- The application should be able to clear out any balls that are
already on the screen.
- At least 3 different types of ball sub-classes must be implemented
which have distinct behaviors. This can include changing colors,
curving around, changing radius, etc.
Turn-in instructions:
- Zip up the entire project directory, including the project file and
source and binary sub-directories. In Windows, you can do this by
right-clicking the project folder and selecting "Send to"/ "Compressed
(zipped) folder".
- Submit that one zipped file as an
attachment to this assignment. DO NOT PUT IT
IN A DROPBOX!!
- Add any instructions on how run your program in the text field for
this assignment's submission.