Reference no: EM132757
QUESTION 1
(a) Write class 'Weather' to contain the following:-
(i) Data members- humidity, air_pressure, atmospheric_temperature and wind_speed all of datatype double
(ii) A no-argument constructor to initialize humidity to zero
(iii) An overloaded constructor with 1 parameter to assign a value to the air_pressure
(iv) An overloaded constructor with 2 parameters to assign values to the humidity and air_pressure
(v) An overloaded constructor with 3 parameters to assign values to the humidity, air_pressure, atmospheric_temperature
(vi) An overloaded constructor with 4 parameters to assign values to each of the variables declared
(vii) Set method for each of data members
(viii) Get method for each of the variables
(b) Write down an application to perform the following-
(i) Create a 'Weather' object using the no-argument constructor
(ii) Create a second 'Weather' object using the overloaded constructor one parameter
(iii) Create a third 'Weather' object using the overloaded constructor two parameters
(iv) Create a fourth 'Weather' object using the overloaded constructor three parameters
(v) Create a fifth 'Weather' object using the overloaded constructor four parameters
(vi) Use the set methods to assign values to each of the variables declared
(Vii) Display the values using message dialog
QUESTION 2
(a) Write the interface 'WaterResource' to surround following-
(i) Method 'water_amount' of datatype double
(ii) Method 'resource_name' of datatype String
(b) Write down class 'Reservoir' which implements the interface 'WaterResource' and contains the following:-
(i) String variables: name and location
(ii) Variables- capacity and amount_available of datatype double
(iii) Set method for each of the variables
(iv) Get method for each of the variables
(v) Override 2 methods inherited from the interface WaterResource
(c) Write the class 'Lake' that inherits from the class 'Reservoir' and contains following-
(i) A variable area_size of datatype double
(ii) A set method to assign value to the area_size
(iii) A get method to return the value of area_size
(iv) Override method water_amount inherited from super class Reservoir to indicate the amount of water available in the lake
(v) Override the method resource_name inherited from super class Reservoir to return the name of the resource that is lake.
QUESTION 3
Clarify following OO concepts using appropriate java code extracts-
(a) Encapsulation
(b) Inner class
(c) Polymorphism
(d) Constructor chaining
(e) subclassing