Implementing classes - understanding and accessing instance


CSE110 - Arizona State University

Topics
- Conditional and Loops (Chapter 4)
- Implementing classes (Chapter 5)
- Understanding and accessing instance variables (Chapter 8)
- Implementing methods (Chapter 6)
- Object construction (Chapter 6)
- Constructors (chapter 8)
- Encapsulation (Chapter 8)

Coding Guidelines:
- Give identifiers semantic meaning and make them easy to read (examples numStudents, grossPay, etc).
- Keep identifiers to a reasonably short length.
- User upper case for constants. Use title case (first letter is upper case) for classes. Use lower case with uppercase word separators for all other identifiers (variables, methods, objects).
- Use tabs or spaces to indent code within blocks (code surrounded by braces). This includes classes, methods, and code associated with ifs, switches and loops. Be consistent with the number of spaces or tabs that you use to indent.
- Use white space to make your program more readable.

Part #1: Written Exercises
None

Part #2 - Programming
Your assignment is to write a class definition (not a program, there is no main method) named Triangle
(saved in a file Triangle.java). A Triangle has 3 instance variables:
int side1, side2, side3;

The class Triangle must include the following constructors and methods: (If your class does not contain any of the following methods, points will be deducted).
- public Triangle (int s1, int s2, int s3) - Sets up a triangle with the specified side lengths.
- private int largest() - Returns the length of the longest side of the triangle. This is a helper method.

- private int shortest() Returns the length of the shortest side of the triangle. This is a helper method.
- public boolean is_equilateral() - Determines whether a triangle is equilateral. If the longest side is equal to the shortest side, then the triangle is equilateral.
- public boolean is_isosceles() - Determines whether a triangle is isosceles. Any (and at least) two sides must be equal.
- public boolean is_scalene() - Determines whether a triangle is scalene. No two sides are equal.
- public String toString() - Prints the sides of the triangle.
Save the Triangle class in a file called Triangle.java and use the following program stored in Assignment4.java which has the main method to create a new Triangle object and to test what kind of Triangle it is. A sample output is shown below.

Important
Your class should have exactly the method headers that are described or otherwise your class will not work with the test driver program (Assignment4.java) that is provided. You should never change the test driver program if the test driver is provided but instead make changes to Triangle class to make it work.

Helpful Hints
- Work on it in steps - write one method, test it with a test driver and make sure it works before going on to the next method.
- Always make sure your code compiles before you add another method.
- Your methods should be able to be called in any order.
Triangle equal = new Triangle (6, 6, 6); //example of equilateral (and isosceles) triangle Triangle isosceles = new Triangle (3, 7, 7); // example of isosceles triangle
Triangle scalene = new Triangle (4, 5, 6); // example of scalene triangle

Sample Outputs
Sample 1:
Enter the sides of the triangle:
3 4 5
3 4 5 triangle:
It is not isosceles
It is not a equilateral It is scalene

Check another Triangle (y/n)? y
Enter the sides of the triangle:
4 5 6
4 5 6 triangle:
It is not isosceles
It is not a equilateral It is scalene

Check another Triangle (y/n)? y
Enter the sides of the triangle:
4 4 4

4 4 4 triangle: It is isosceles It is equilateral
It is not scalene

Check another Triangle (y/n)? y
Enter the sides of the triangle:
3 7 7
3 7 7 triangle: It is isosceles
It is not a equilateral It is not scalene

Check another Triangle (y/n)? n
Press any key to continue . . .

Solution Preview :

Prepared by a verified Expert
JAVA Programming: Implementing classes - understanding and accessing instance
Reference No:- TGS02382996

Now Priced at $20 (50% Discount)

Recommended (94%)

Rated (4.6/5)