Jacob Andersen b9ddad6524 Completed | 6 år sedan | |
---|---|---|
doc | 6 år sedan | |
.DS_Store | 6 år sedan | |
.gitignore | 6 år sedan | |
README.TXT | 6 år sedan | |
README.md | 6 år sedan | |
TicketMachine.java | 6 år sedan | |
bluej.pkg | 6 år sedan | |
bluej.pkh | 6 år sedan | |
package.bluej | 6 år sedan |
The second Objects lab,from the BlueJ book's second chapter.
Look for the Chapter 2 file you need in the doc folder. There is 35 pages of reading and exercises in the chapter.
Work through all these exercises. You edit this file with your answers for these exercises.
Exercise 2.5 Create another ticket machine for tickets of a different price. Buy a ticket from that machine. Does the printed ticket look different? only ticket price
Exercise 2.6 Write out what you think the outer wrappers of the Student and LabClass classes might look like – do not worry about the inner part.
Public class Student () {} Public class LabClass() {}
public class TicketMachine
or
class public TicketMachine
in the outer wrapper of a class? Edit the source of the TicketMachine class to
make the change and then close the editor window. Do you notice a change in the
class diagram? Yes, the class shows a square pattern
What error message do you get when you now press the Compile button? Do you think
this message clearly explains what is wrong? Identifier expected, yes, it expected an identifier before the name of the classExercise 2.8 Check whether or not it is possible to leave out the word public from the outer wrapper of the TicketMachine class.
Exercise 2.9 From your earlier experimentation with the ticket machine objects within BlueJ you can probably remember the names of some of the methods – printTicket, for instance. Look at the class definition in Code 2.1 and use this knowledge, along with the additional information about ordering we have given you, to try to make a list of the names of the fields, constructors, and methods in the TicketMachine class. Hint: There is only one constructor in the class.
Fields : price, balance, total Constructor : Ticketmachine (ticket cost) Methods : getPrice, getBalance, insertMoney, printTicket
Exercise 2.10 Do you notice any features of the constructor that make it significantly different from the other methods of the class?
it doesn't have a return type in front of the constructor name
private int count; integer
private Student representative; object
private Server host; object
private boolean alive; alive
private Person tutor; tutor
private Game game; game
private int price;
does it matter which order the three words appear in? yes
Edit the TicketMachine class to
try different orderings. After each change, close the editor. Does the appearance of the
class diagram after each change give you a clue as to whether or not other orderings are
possible? yes, only the original order works, the class diagram shows a chequered pattern and throws an error otherwise
Check by pressing the Compile button to see if there is an error message.
Make sure that you reinstate the original version after your experiments!yes, because it identifies the statement as a complete java statement
Once again, experiment via the editor. The rule you will learn here is an important one, so be sure to remember it.
int status;
public Student(String name)
public Book(String title, double price)
yes, there might be a field Material of type string, to distinguish between paperback, softcover or kindle another field Condition of type String could contain whether the book was used or new, available for sale or rental
Work all Exercises from 2.19 to 2.58 that are NOT marked Challenge exercise. READ upto and INCLUDING section 2.15 of this chapter.