**This work of ECET 370 Week 1 Lab consists of:**

Exercise 1

Exercise 2

Exercise 3

Exercise 4

Exercise 5

Exercise 6

Exercise 7

Exercise 8

User Defined Classes

Using Interfaces

Exercises 1, 2, 4, and 5 use the programs in DocSharing labeled “User-defined classes.” Exercises 7 and 8 use the programs in DocSharing labeled “Using interlaces.”

Exercise 1: Review of classes Create a project using the classes in the DocSharing area labeled “User-defined classes.” Compile it, run it, and review the code that is given carefully.

Exercise 2: User-defined methods The function area of the Triangle class is the framework of the actual method. Modify it so that it calculates the area of the triangle. Write a Main class to test your area method. Note: to calculate the area of a triangle from the vertices, first find the distances between each pair of vertices to obtain the length of the sides of the triangle. Then apply Heron’s formula to calculate the area given the length of the sides.

Exercise 3: Shallow versus deep copy Provide an example of shallow copy of objects and an example of deep copy of objects.

Exercise 4: Passing parameters to methods Write a function that swaps two Point objects. Use the code given below: import java.util.*; public class Main { public Main() { Scanner Scanner(System.in); System.out. print(“Enter x and y coordinates of first point: “); Point Point (in.nextDouble(), in.nexlDouble()); System.out. print(“Enler x and y coordinates of second point:”); Point Point (in.nextDouble(), in.nextDouble()); swap(pl, p2); System.out.println(” Compile it, run it, and review the code that is given carefully. Note: The class Point implements the Comparable interface. The Comparable interface contains a single method: compareTo, which is used to compare two objects p and q of the same class type. When calling p.compareTo(q), it returns an integer. If this value is negative it means that p is smaller; if it is equal to zero then, and if the value is positive, it indicates that p is greater than q.

Exercise 8: Implementation of interfaces Using the class Point in the DocSharing area labeled “Using interfaces,” write an application that declares an array of Points, fills the array with random points, and finds the smallest point in the array.