F 1. The first things in a data file are two numbers indicating the size of the environment.
F 2. In a data file, the direction of a fish is indicated by 1 for North, 2 for East, etc.
T 3. The Slow fish nextLocation method calls super.nextLocation.
F 4. The Darter fish nextLocation method is probabilistic.
T 5. The Slow fish nextLocation method is probabilistic.
T 6. The Environment class could be used to model a marching band.
F 7. It is possible to display the environment in GUI (Graphical User Interface) only.
T 8. Classes whose objects will be put in an environment must implement the Locatable interface.
T 9. A toaster is a black box.
T 10. The constructors call an internal helper method, initialize.
T 11. All objects in an environment must be Locatable.
T 12. Always using the same random number generator produces a better set of random numbers.
F 13. Where a fish thanks it is and where the environment thinks it is are always the same.
T 14. A fish will move only if it is in a consistent state.
F 15. emptyNeighbors returns a static array of locations.
F 16. neighborsOf will always return exactly four locations.
T 17. The changeLocation method notifies the environment to update itself.
F 18. When changing location, a fish passes two location objects to the environment.
T 19. Programs with random behavior can be difficult to test.
F 20. If you seed the random number generator, it will produce a different set of numbers each time.
F 21. An empty data file should generate an empty environment.
T 22. Black box test cases may not cover all possibilities.
F 23. Debug methods require creating an object.
F 24. The Direction class does not contain diagnol directions.
T 25. The getInstant method of the RandGenorator. Class is static.
T 26. It would be possible for different types of fish to have different chances of breeding and dying.
F 27. The breed method creates new fish.
T 28. In a grid completely filled with fish, it is possible for a fish to move in the first timestep.
T 29. A file with two or more fish at one location should generate an error.
F 30. If a fish does not move in a timestep, it will not die in that timestep.
T 31. If a fish breeds in a timestep, it will not move in that timestep.
T 32. The percentage of deaths came closer to expectations with 20 timesteps that with 5 timesteps.
T 33. Override means the same as redefine.
F 34. If you redefine a method for a subclass, you must also redefine all the methods it calls.
T 35. Dynamic binding means the same as polymorphism.
T 36. It is possible for the Simulation class to use the protected methods of the Fish class.
F 37. It is advisable for the Simulation class to use the protected methods of the Fish class.
F 38. Constructors can be inherited.
T 39. Regression testing is making sure modifications have not broken working code.
F 40. Darter fish random numbers for movement.