Reference no: EM132278211
Java Zoo, and Transfunctifier Apps
1) Java Zoo
Build a Java application that creates instances of at least 12 different concrete classes of Animal in an ArrayList
• use at least one abstract class
• use at least one interface (with at least three methods) to identify behaviors of a specific subclass of your zoo-animals (e.g. pets, reptiles, mammals, aquatic, etc.)
Once the zoo ArrayList is populated, traverse it.
For each object:
• print index and animal-type
• output result(s) of polymorphic methods
• output result(s) of interface methods (if any!)
Write a short (2-3 page) report discussing and explaining your design, choices
• Justify your Abstract class choice, your Interface choice -- why did these structures in particular need to be abstract, or interface?
• Provide a general Hierarchy chart for your classes
• Provide a UML diagram for your abstract class, interface, one concrete class
• Provide code (in Appendix?) for Abstract class, Interface, and one concrete animal class -- no, this doesn't count in pg-count
• Also provide listing of program output (2-column format)
2) Transfunctifyer App
Need a transfunctification object capable of outputting not only sine and cosine functions, but also a third non-linear fct of your choice
• Write me a class (MechTurk) that generates a formatted table of the values of the three functions over the range [-2π ... +2π]
num fct1 fct2 fct3
-6.28 0 1.0 -1234.65
etc.
• Columns should not be hard-coded. That is, you should be able to dynamically change, at need, which function is rendered in which column
• Like your zoo app, write a report explaining your design, how you achieved dynamic functification, how functions are assigned to output columns
• Provide relevant UML diagrams, class snippets, and sample program outputs/screen-captures