The project downloaded contains a package (folder) named Q3 within the src folder. The purpose of Question 3 is to examine your understanding of classes and inheritance. Inside Q3 is a completed Java class named Location. Location contains three fields: • locationName: name of location (String) • latitude: latitude of location (Double) • longitude: longitude of location (Double) Conceptually, the Location class represents a geographic location (e.g. a city). You do not need to modify the Location class. In this question you will complete an additional class named EuclideanRoute. The fields of the EuclideanRoute class consist of two Location objects named origin and destination. Therefore, a EuclideanRoute object represents the start/end points of a route a vehicle takes. The EuclideanRoute class is derived from the RouteInformation class and the routeDestination method calculates the distance from the origin to the destination using the formula for Euclidean distance. Finally, in the Question3 class you are asked to create an object of type EuclideanRoute and determine the distance between its origin anddestination. The steps to solve Question 3 are broken down as follows. a. Create a class named RouteInformation within the Q3 package (folder). The class contains the following two fields: origin: field type - Location destination: field type - Location and a fully paramterized constructor. b. In the RouteInformation class, define a method named routeDistance. This method accepts no ar- guments and returns a double. Your implementaiton of routeDistance in the RouteInformation class should simply return a 0; Note that this is the only file in Question 3 that you must create from scratch. 3 c. Modify the EuclideanRoute class so that it is inherits from the RouteInformation class Create a fully parameterized constructor for the EuclideanRoute class that makes use of the constructor from the RouteInformation class. Finally, implement the routeDistance method in the EuclideanRoute class using the following formula. where olat: latitude of origin dlat: latitude of destination olong: longitude of origin dlong: longitude of destination route distance = ? olat − dlat)2 + (olong − dlong)2 d. In the main method of the class named Question3, create a EuclideanRoute object named r1 with the following information for the objects two Location fields. origin: name -> Fort Smith, latitude -> 10.2, longitude -> 100.5 destination: name -> Little Rock, latitude -> 50.7, longitude -> 50.9 Set the variable distanceCalculated equal to the Euclidean distance from the origin to the destination of r1 using the method implemented in the EuclideanRoute class. A line of code to print distanceCalculated is written for you and does not need to be modified.   Code: package Q3; public class EuclideanRoute{ /** * Q3 Part c * * Create a fully parameterized constructor for the *EuclideanRoute* class that makes * use of the constructor from the RouteInformation* class. * * * * Implement the routeDistance method. * The formula for routeDistance is given in the description of the Question 3. * */ } package Q3; //Don't modify this class. public class Location { String locationName; Double latitude; Double longitude; public Location(String locationName, Double latitude, Double longitude) { this.locationName = locationName; this.latitude = latitude; this.longitude = longitude; } } package Q3; public class Question3 { public static void main(String[] args) { /** * Part d * create a EuclideanRoute object named r1 with the following information * origin: name - Fort Smith, latitude 10.2, longitude 100.5 * destination: name - Little Rock, latitude 50.7, longitude 50.9 */ double distanceCalculated = 0.0; /** * Part d * Set the variable distanceCalculated equal to the Euclidean distance from the origin to the destination of r1 * using the method implemented in the EuclideanRoute class. */ //Do not modify line below System.out.println("Distance from the route's origin to destination: " + distanceCalculated); } }

EBK JAVA PROGRAMMING
9th Edition
ISBN:9781337671385
Author:FARRELL
Publisher:FARRELL
Chapter10: Introduction To Inheritance
Section: Chapter Questions
Problem 9PE
icon
Related questions
Question

The project downloaded contains a package (folder) named Q3 within the src folder. The purpose of Question 3 is to examine your understanding of classes and inheritance.

Inside Q3 is a completed Java class named Location. Location contains three fields:

• locationName: name of location (String) • latitude: latitude of location (Double)
• longitude: longitude of location (Double)

Conceptually, the Location class represents a geographic location (e.g. a city). You do not need to modify the Location class. In this question you will complete an additional class named EuclideanRoute. The fields of the EuclideanRoute class consist of two Location objects named origin and destination. Therefore, a EuclideanRoute object represents the start/end points of a route a vehicle takes. The EuclideanRoute class is derived from the RouteInformation class and the routeDestination method calculates the distance from the origin to the destination using the formula for Euclidean distance. Finally, in the Question3 class you are asked to create an object of type EuclideanRoute and determine the distance between its origin anddestination. The steps to solve Question 3 are broken down as follows.

a. Create a class named RouteInformation within the Q3 package (folder). The class contains the following two fields:

  • origin: field type - Location

  • destination: field type - Location

    and a fully paramterized constructor.

    b. In the RouteInformation class, define a method named routeDistance. This method accepts no ar- guments and returns a double. Your implementaiton of routeDistance in the RouteInformation class should simply return a 0; Note that this is the only file in Question 3 that you must create from scratch.

3

c. Modify the EuclideanRoute class so that it is inherits from the RouteInformation class Create a fully parameterized constructor for the EuclideanRoute class that makes use of the constructor from the RouteInformation class. Finally, implement the routeDistance method in the EuclideanRoute class using the following formula.

where

  • olat: latitude of origin

  • dlat: latitude of destination

  • olong: longitude of origin

  • dlong: longitude of destination

route distance =

?

olat − dlat)2 + (olong − dlong)2

d. In the main method of the class named Question3, create a EuclideanRoute object named r1 with the following information for the objects two Location fields.

  • origin: name -> Fort Smith, latitude -> 10.2, longitude -> 100.5

  • destination: name -> Little Rock, latitude -> 50.7, longitude -> 50.9

    Set the variable distanceCalculated equal to the Euclidean distance from the origin to the destination of r1 using the method implemented in the EuclideanRoute class. A line of code to print distanceCalculated is written for you and does not need to be modified.

 

Code:

package Q3;

public class EuclideanRoute{




/**
* Q3 Part c
*
* Create a fully parameterized constructor for the *EuclideanRoute* class that makes
* use of the constructor from the RouteInformation* class.
*
*
*
* Implement the routeDistance method.
* The formula for routeDistance is given in the description of the Question 3.
*
*/

}

package Q3;

//Don't modify this class.

public class Location {

String locationName;
Double latitude;
Double longitude;

public Location(String locationName, Double latitude, Double longitude) {
this.locationName = locationName;
this.latitude = latitude;
this.longitude = longitude;
}





}

package Q3;

public class Question3 {

public static void main(String[] args)
{
/**
* Part d
* create a EuclideanRoute object named r1 with the following information
* origin: name - Fort Smith, latitude 10.2, longitude 100.5
* destination: name - Little Rock, latitude 50.7, longitude 50.9
*/


double distanceCalculated = 0.0;

/**
* Part d
* Set the variable distanceCalculated equal to the Euclidean distance from the origin to the destination of r1
* using the method implemented in the EuclideanRoute class.
*/


//Do not modify line below
System.out.println("Distance from the route's origin to destination: " + distanceCalculated);
}
}

Expert Solution
steps

Step by step

Solved in 2 steps

Blurred answer
Knowledge Booster
Running Time of Application
Learn more about
Need a deep-dive on the concept behind this application? Look no further. Learn more about this topic, computer-science and related others by exploring similar questions and additional content below.
Similar questions
  • SEE MORE QUESTIONS
Recommended textbooks for you
EBK JAVA PROGRAMMING
EBK JAVA PROGRAMMING
Computer Science
ISBN:
9781337671385
Author:
FARRELL
Publisher:
CENGAGE LEARNING - CONSIGNMENT