Question: Wri Help to write java classes to run the test program below. import java.lang.System; import java.lang.String; import java.lang.Object; import java.util.Date; import java.util.GregorianCalendar; import java.text.ParseException; import
Wri Help to write java classes to run the test program below.
import java.lang.System;
import java.lang.String;
import java.lang.Object;
import java.util.Date;
import java.util.GregorianCalendar;
import java.text.ParseException;
import Project3.Weather;
import Project3.Event;
import Project3.SportEvent;
import Project3.MusicEvent;
import Project3.ArtEvent;
import Project3.SoccerGame;
import Project3.Concert;
public class TestEvent {
public static void main(String[] args) throws ParseException {
Date dateTime;
GregorianCalendar calendar = new GregorianCalendar();
calendar.set(2018, 7, 28, 10, 0); // 07/28/2018, 10:00
dateTime = calendar.getTime();
Object object1 = new SoccerGame("Ultimate Cup", "River City Sportsplex", dateTime, 1000, new String[]{"UR", "VCU"}, new int[]{1, 0}, "Professional", new Weather(true, 95.0, 2.0, 0.8));
System.out.println(object1);
TestEvent.getNumberOfObjects();
System.out.println();
calendar.set(2018, 8, 1, 13, 0); // 08/01/2018, 13:00
dateTime = calendar.getTime();
Object object3 = new Concert("Folk Festival", "Browns Island", dateTime, 900, new String[]{"The Green Fields of America", "Bela Dona", "Dale Ann Bradley"} , "Folk Music", new Weather(false, 85.0, 2.0, 0.5));
System.out.println(object3);
TestEvent.getNumberOfObjects();
System.out.println();
calendar.set(2018, 8, 2, 10, 0); // 08/02/2018, 10:00
dateTime = calendar.getTime();
Object object5 = new SoccerGame("Jefferson Cup", "River City Sportsplex", dateTime, 2000, new String[]{"UR", "VCU"}, new int[]{1, 1}, "College", new Weather(true, 85.0, 2.0, 0.5));
System.out.println(object5);
TestEvent.getNumberOfObjects();
System.out.println();
calendar.set(2018, 8, 2, 20, 30); // 08/02/2018, 20:30
dateTime = calendar.getTime();
Object object6 = new Concert("Innsbrook After Hours", "Innsbrook", dateTime, 500, new String[]{"Lee Brice"} , "Jazz", new Weather(true, 65.0, 2.0, 0.5));
System.out.println(object6);
TestEvent.getNumberOfObjects();
System.out.println();
calendar.set(2018, 8, 3, 10, 30); // 08/03/2018, 10:30
dateTime = calendar.getTime();
Object object7 = new ArtEvent("Abstract Art in Dialogue", "Virginia Museum of Fine Arts", dateTime, 500, "Abstract Art");
System.out.println(object7);
TestEvent.getNumberOfObjects();
System.out.println();
} // main()
public static void getNumberOfObjects() {
System.out.println("Events: " + Event .getNumberOfObjects());
System.out.println("Sport Events: " + SportEvent .getNumberOfObjects());
System.out.println("Music Events: " + MusicEvent .getNumberOfObjects());
System.out.println("Art Events: " + ArtEvent .getNumberOfObjects());
System.out.println("Soccer Games: " + SoccerGame .getNumberOfObjects());
System.out.println("Concerts: " + Concert .getNumberOfObjects());
} // class TestEvent
import java.lang.Math;
public class Weather { private boolean sunny;
private double temperature;
private double windSpeed;
private double humidity;
public Weather() {} public Weather(boolean sunny, double temperature, double windSpeed, double humidity) { this.setSunny(sunny);
this.setTemperature(temperature);
this.setWindSpeed(windSpeed);
this.setHumidity(humidity);
} // Weather()
public final void setSunny(boolean sunny) {this.sunny = sunny;} public boolean isSunny() {return this.sunny;} public final void setTemperature(double temperature) {this.temperature = temperature;} public double getTemperature() {return this.temperature;} public final void setWindSpeed(double windSpeed) {this.windSpeed = windSpeed;} public double getWindSpeed() {return this.windSpeed;} public final void setHumidity(double humidity) {this.humidity = humidity;} public double getHumidity() {return this.humidity;} public double getHeatIndex() {return -42.379 + 2.04901523*getTemperature() + 10.14333127*getHumidity() - 0.22475541*getTemperature()*getHumidity() - 0.00683783*Math.pow(this.getTemperature(), 2.0) - 0.05481717*Math.pow(this.getHumidity(), 2.0) + 0.00122874*Math.pow(this.getTemperature(), 2.0)*getHumidity() + 0.00085282*getTemperature()*Math.pow(this.getHumidity(), 2.0) - 0.00000199*Math.pow(this.getTemperature(), 2.0)*Math.pow(this.getHumidity(), 2.0);} public boolean isGoodWeather() {return this.isSunny() && (this.getTemperature() >= 60.0 && this.getTemperature() <= 95.0) && this.getWindSpeed() <= 10.0 && (this.getHumidity() >= 0.4 && this.getHumidity() <= 0.8);} public boolean isBadWeather() {return !(this.isGoodWeather());} } // class Weather
public interface GoodWeather { public abstract boolean isGoodWeather(); // (Sunny) AMD (60.0 <= Temperature <= 95.0) AND (Wind Speed <= 10.0) AND (40.0% <= Humidity <= 80.0%)
} // interface GoodWeather
import java.util.Date;
import java.util.Calendar;
public class Week { public static boolean isWeekEnd(Date date) { Calendar calendar = Calendar.getInstance();
calendar.setTime(date);
return (calendar.get(Calendar.DAY_OF_WEEK) == 1 || calendar.get(Calendar.DAY_OF_WEEK) == 7);
} // isWeekEnd()
public static boolean isWeekDay(Date date) {return !(Week.isWeekEnd(date));} } // class We
Step by Step Solution
There are 3 Steps involved in it
Get step-by-step solutions from verified subject matter experts
