1. Which of the following are not valid Java identifiers, and why?
(a) wolVes
(b) United(there is only one)
(c) 87
(d) 5 3
(e) Real ale
(f) isFound?by
2. A class Television has the following fields:
private TelevisionManufacturer supplier;
private String code
private int screenSize; // in inches
private String type; // e.g. plasma screen
Assume that the class TelevisionManufacturer is available and that this class contains an equals method.
(a) Define a class variable, totalTVs, whose purpose is to keep track of the total number of Television objects constructed during execution of a program that uses the Television class.
(b) Declare a default constructor for this class.
(c) Declare a constructor for this class which has a formal parameter corresponding to each field.
(d) Declare an accessor method called getScreenSize whose purpose is to return the value of the screenSize field of this Television.
(e) Declare a mutator method that sets the type of this Television to a given value.
(f) Declare a method to determine whether or not this Television has been supplied by a given manufacturer.
1. An electronics company needs to implement a simple stock control system. You are required to write a Java application which contains a class called StockItem together with a main method class called StockDemo. Information for each type of stock item consists of:
inventory identifier (e.g. A654Y);
quantity in stock (e.g. 350);
demand rate (quantity removed from stock each working day, assumed constant, e.g. 50);
re-order quantity (the size of an ordered batch of items, assumed constant, e.g 1000);
lead-time (number of working days delay between placing and receiving an order for a batch, e.g. 5).
The class StockItem should include fields for each of the above data items and should also include each of the following:
a default constructor that sets all fields to null or zero as appropriate;
a constructor with arguments for all fields;
set methods for all fields;
accessor methods for each of the fields;
a method to update the stock quantity when a batch is received;
a method called isReOrderPoint( ) that returns true if a batch needs to be re-ordered for this stock item and false otherwise;
a toString method that returns a description of this StockItem.
Add Java statements to your main method to thoroughly test your class.
2. A class Weather is to have as one of its fields an array called rainfall. For each
Weather object the instance variable corresponding to the rainfall field is used to hold the rainfall (in mm) for each of the 12 months in the year specified by a field, year, at the location specified by a field, site.
Write a Java application containing a main method class called WeatherDemo and a Weather class. In addition to the fields specified above your Weather class should contain:
A constructor with arguments for the year and site fields; this constructor should also create a rainfall array with all elements initialised to zero;
A mutator method setRainfallForMonth which, given an int, month, in the range 1 to 12, representing a month in a year, sets the appropriate element of the rainfall array of this Weather object to a value given as the second argument of the method. If month is not in the range 1 to 12, the rainfall array is not modified.
A method getAverageRainfall to return the average rainfall over the year for this Weather object.
A method getMonthOfMaxRainfall to return as a String the name of the month having the maximum rainfall during the year for this Weather object.
a toString method.
Add Java statements to your main method to thoroughly test your class.
3. Data for a number of people is given as a string. The data for each person is given by two fields, a forename and a surname separated from each other by a forward slash character. The end of each person's data is marked by a # character. The following is an example of such a String:
Write and test a Java application containing a main method class called ArrayOfStringsDemo and a class called Name.
Name is to have two fields, one for a forename and one for a surname, and should include a constructor with formal arguments corresponding to the fields, an accessor method for each field and a toString method.
In addition to the main method, ArrayOfStringsDemo should contain a static method called findName which takes two arguments. The first argument is an array of elements of type Name and the second argument is a Name. findName returns the index of the element in the given array whose firstname and secondname are the same as those of the Name given as the second argument. If a match is not found, -1 is returned.
You main method should implement the following steps.
(a) Prompt for and read in an integer representing the number of rstname/secondname pairs in a string to be input; store the input value in an int n.
(b) Prompt for and read in a String with the above format and containing n firstname/secondname pairs.
(c) Construct an array of Names of size n called testArray.
(d) For each successive firstname/secondname in the input String, construct a Name object and assign this to the next element in testArray.
(e) Use an appropriate selection of test Names to thoroughly test your findName method.