Java Reference
In-Depth Information
Code 4.10
continued
The
Auction
class
* @param lotNumber The lot being bid for.
* @param bidder The person bidding for the lot.
* @param value The value of the bid.
*/
public
void
makeABid(
int
lotNumber, Person bidder,
long
value)
{
Lot selectedLot = getLot(lotNumber);
if
(selectedLot !=
null
) {
Bid bid =
new
Bid(bidder, value);
boolean
successful = selectedLot.bidFor(bid);
if
(successful) {
System.out.println(
"The bid for lot number "
+
lotNumber +
" was successful."
);
}
else
{
// Report which bid is higher.
Bid highestBid = selectedLot.getHighestBid();
System.out.println(
"Lot number: "
+ lotNumber +
" already has a bid of: "
+
highestBid.getValue());
}
}
}
/**
* Return the lot with the given number. Return null
* if a lot with this number does not exist.
* @param lotNumber The number of the lot to return.
*/
public
Lot getLot(
int
lotNumber)
{
if
((lotNumber >= 1) && (lotNumber < nextLotNumber)) {
// The number seems to be reasonable.
Lot selectedLot = lots.get(lotNumber - 1);
// Include a confidence check to be sure we have the
// right lot.
if
(selectedLot.getNumber() != lotNumber) {
System.out.println(
"Internal error: Lot number "
+
selectedLot.getNumber() +
" was returned instead of "
+
lotNumber);
selectedLot =
null
;
}
return
selectedLot;
}
Search WWH ::
Custom Search