Academic Integrity: tutoring, explanations, and feedback — we don’t complete graded work or submit on a student’s behalf.

[JAVA] Write codes using Type 1 Inner Classes (All outer classes are implicitly

ID: 3803727 • Letter: #

Question

[JAVA]

Write codes using Type 1 Inner Classes (All outer classes are implicitly static). This means that all the classes created for this program will be created inside a single Outer class.

(Triangle class) Design a new Triangle class that extends the abstract GeometricObject class. Draw the UML diagram for the classes Triangle and GeometricObject and then implement the Triangle class. Write a test program that prompts the user to enter three sides of the triangle, a color, and a Boolean value to indicate whether the triangle is filled. The program should create a Triangle object with these sides and set the color and filled properties using the input. The program should display the area, perimeter, color, and true or false to indicate whether it is filled or not.

(Please don't use ArrayList class!)

all variables declared in class must be private. provide getter/setter methods. always add a print() for debugging add a default constructor.

Explanation / Answer

import java.util.Scanner;

public class OuterClass {

   public static abstract class GeoMetricObject {

       public abstract double area(double side1, double side2, double side3);

       public abstract double perimeter(double side1, double side2, double side3);

   }

   public static class Triangle extends GeoMetricObject {

       @Override
       public double area(double side1, double side2, double side3) {
           double s4 = (side1 + side2 + side3 )/ 2 ;
           double area = Math.sqrt(s4 * (s4 - side1) * (s4 - side2) * (s4 - side3));
           return area;
       }

       @Override
       public double perimeter(double side1, double side2, double side3) {
           double perimeter = side1 + side2 + side3;
           return perimeter;
       }

       public static void main(String[] args) {

           double side1,side2,side3, area, perimeter;
           String color;
           boolean isFilled = false;

           Scanner sc = new Scanner(System.in);
           System.out.println("Please enter first side of triangle: ");
           side1 = sc.nextDouble();
           System.out.println("Please enter second side of triangle: ");
           side2 = sc.nextDouble();
           System.out.println("Please enter third side of triangle: ");
           side3 = sc.nextDouble();
           System.out.println("Please enter triangle color: ");
           color = sc.next();
           System.out.println("Do you want to fill trianlge with color : Y/N");
           if(sc.next().equalsIgnoreCase("Y")) {
               isFilled = true;
           }

           GeoMetricObject geoMetricObject = new OuterClass.Triangle();
           area = geoMetricObject.area(side1, side2, side3);
           perimeter = geoMetricObject.perimeter(side1, side2, side3);

           System.out.println("Area of triangle is: "+area);
           System.out.println("Perimeter of triangle is: "+perimeter);
           if(isFilled) {
               System.out.println("Triangle is filled with "+ color + " color");
           } else {
               System.out.println("Triangle is not filled with "+ color + " color");
           }
       }

   }

}

Hire Me For All Your Tutoring Needs
Integrity-first tutoring: clear explanations, guidance, and feedback.
Drop an Email at
drjack9650@gmail.com
Chat Now And Get Quote