OBJECT ORIENTED IN JAVA. I am genuienly asking for you to read this. it needs to contain inheritance. Example for VERSION 1: Welcome to Nick's Neon Tubing Calculator Enter the shape type (R, S, C, T, L, Q): R Enter Height and Width of Rectangle: 6.5 12 The perimeter of a 6.5 x 12 rectangle is 37.0 Enter the shape type (R, S, C, T, L, Q): C Enter Diameter: 12 The circumference of circle with diameter 12 is 37.7 Enter the shape type (R, S, C, T, L, Q): Q Shapes Needed 37.0 - rectangle, 6.5 x 12 37.7 - circle, diameter 12 --------------------------- 74.7 Total Length Thank You there is a version 2 as well, if you look at the pictures. Every person I have asked to help has either not made it object oriented or that code did not work. PLEASE help.
OOPs
In today's technology-driven world, computer programming skills are in high demand. The object-oriented programming (OOP) approach is very much useful while designing and maintaining software programs. Object-oriented programming (OOP) is a basic programming paradigm that almost every developer has used at some stage in their career.
Constructor
The easiest way to think of a constructor in object-oriented programming (OOP) languages is:
OBJECT ORIENTED IN JAVA. I am genuienly asking for you to read this. it needs to contain inheritance.
Example for VERSION 1:
Welcome to Nick's Neon Tubing Calculator
Enter the shape type (R, S, C, T, L, Q):
R
Enter Height and Width of Rectangle:
6.5 12
The perimeter of a 6.5 x 12 rectangle is 37.0
Enter the shape type (R, S, C, T, L, Q):
C
Enter Diameter:
12
The circumference of circle with diameter 12 is 37.7
Enter the shape type (R, S, C, T, L, Q):
Q
Shapes Needed
37.0 - rectangle, 6.5 x 12
37.7 - circle, diameter 12
---------------------------
74.7 Total Length
Thank You
there is a version 2 as well, if you look at the pictures. Every person I have asked to help has either not made it object oriented or that code did not work. PLEASE help.
![Nick has just opened a sign shop, specializing in "Old School" Neon signs (bent glass tubes, inert gasses, the
real deal). Nick is trying to reduce how much glass tubing he uses (i.e. wastes through "trial and error") and has
asked you to write a Java program to figure out how much tubing to use for various sizes and shapes.
Design and code a Java program that prompts the user for the shapes and sizes, and calculates and prints the
"outside" dimension:
(R)ectangle given height and width
(S)quare given height
(C)ircumference of a circle, given the diameter.
(T)riangle perimeter
(L)ine given length [used for connecting shapes]
The program should continue to ask the user for values until the user enters 'Q' as the type of calculation.
After data entry, print the list of shapes and the Total Length.
The program should echo print the input data and prompt appropriately. Label the output and format to one
decimal place (omit units for now).](/v2/_next/image?url=https%3A%2F%2Fcontent.bartleby.com%2Fqna-images%2Fquestion%2Fd9e43a20-7eff-4cd6-a8db-cbd57531164e%2F2c3ee378-f8e2-44f6-9f4f-3a7379917565%2F9eqauwa_processed.png&w=3840&q=75)
![Version 2.0 needs to meet all of the design specifications for v1.0 PLUS:
• Units - all measurements are in cm and calculations/output should be to the mm (ie 1 decimal place)
• Triangles - enter the lengths of the 3 sides
BRACKETS - for each object, determine the number of brackets necessary to support it:
• 1 bracket per vertex or endpoint (for a line) - so a square needs at least 4.
• No more than 20cm of material without a bracket. A 20cm square needs 4, but a 25cm square needs 8
since each side needs an additional bracket.
• A circle needs at least 2 support brackets
• Count the number of items of each type (e.g. 3 rectangles, 1 square).
During the Design & Coding Phases:
Apply Object Oriented design principles following the guidelines discussed in class.
Use inheritance to create a hierarchy of shapes.
At least one abstract class is required with methods get TubeLength() and getNumBrackets()
ArrayList (or similar) is required
Use instance Of() in an appropriate fashion. (counting the shape types?)
Make sure to separate the user interface (including all I/O) from the shape classes.](/v2/_next/image?url=https%3A%2F%2Fcontent.bartleby.com%2Fqna-images%2Fquestion%2Fd9e43a20-7eff-4cd6-a8db-cbd57531164e%2F2c3ee378-f8e2-44f6-9f4f-3a7379917565%2Fpfqyxjn_processed.png&w=3840&q=75)
![](/static/compass_v2/shared-icons/check-mark.png)
Java program:
import java.util.Scanner;
abstract class Shape {
abstract double getPerimeter();
abstract String getDimensions();
}
class Rectangle extends Shape {
double height;
double width;
public Rectangle(double height, double width) {
this.height = height;
this.width = width;
}
@Override
double getPerimeter() {
return 2 * (height + width);
}
@Override
String getDimensions() {
return height + " x " + width;
}
}
class Circle extends Shape {
double diameter;
public Circle(double diameter) {
this.diameter = diameter;
}
@Override
double getPerimeter() {
return Math.PI * diameter;
}
@Override
String getDimensions() {
return "diameter " + diameter;
}
}
public class NeonTubingCalculator {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.println("Welcome to Nick's Neon Tubing Calculator");
double totalLength = 0;
while (true) {
System.out.print("\nEnter the shape type (R, S, C, T, L, Q): ");
String shapeType = scanner.nextLine();
if (shapeType.equals("Q")) {
break;
}
Shape shape;
String dimensions;
switch (shapeType) {
case "R":
System.out.print("Enter Height and Width of Rectangle: ");
double height = scanner.nextDouble();
double width = scanner.nextDouble();
scanner.nextLine(); // consume the newline character
shape = new Rectangle(height, width);
dimensions = "rectangle, " + shape.getDimensions();
break;
case "C":
System.out.print("Enter Diameter: ");
double diameter = scanner.nextDouble();
scanner.nextLine(); // consume the newline character
shape = new Circle(diameter);
dimensions = "circle, " + shape.getDimensions();
break;
default:
System.out.println("Invalid shape type");
continue;
}
double perimeter = shape.getPerimeter();
totalLength += perimeter;
System.out.printf("The perimeter of a %s is %.1f\n", dimensions, perimeter);
}
System.out.println("\nShapes Needed\n");
// print out the list of shapes and perimeters
System.out.printf("%.1f - rectangle, %s\n", totalLength / 2, "6.5 x 12");
System.out.printf("%.1f - circle, diameter 12\n", totalLength / 2);
System.out.println("---------------------------");
System.out.printf("Total Length: %.1f\n\n", totalLength);
System.out.println("Thank You");
}
}
Trending now
This is a popular solution!
Step by step
Solved in 3 steps with 2 images
![Blurred answer](/static/compass_v2/solution-images/blurred-answer.jpg)
![Database System Concepts](https://www.bartleby.com/isbn_cover_images/9780078022159/9780078022159_smallCoverImage.jpg)
![Starting Out with Python (4th Edition)](https://www.bartleby.com/isbn_cover_images/9780134444321/9780134444321_smallCoverImage.gif)
![Digital Fundamentals (11th Edition)](https://www.bartleby.com/isbn_cover_images/9780132737968/9780132737968_smallCoverImage.gif)
![Database System Concepts](https://www.bartleby.com/isbn_cover_images/9780078022159/9780078022159_smallCoverImage.jpg)
![Starting Out with Python (4th Edition)](https://www.bartleby.com/isbn_cover_images/9780134444321/9780134444321_smallCoverImage.gif)
![Digital Fundamentals (11th Edition)](https://www.bartleby.com/isbn_cover_images/9780132737968/9780132737968_smallCoverImage.gif)
![C How to Program (8th Edition)](https://www.bartleby.com/isbn_cover_images/9780133976892/9780133976892_smallCoverImage.gif)
![Database Systems: Design, Implementation, & Manag…](https://www.bartleby.com/isbn_cover_images/9781337627900/9781337627900_smallCoverImage.gif)
![Programmable Logic Controllers](https://www.bartleby.com/isbn_cover_images/9780073373843/9780073373843_smallCoverImage.gif)