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.