#### Howdy, Stranger!

It looks like you're new here. If you want to get involved, click one of these buttons!

# Help me plotting x-y coordinates- Inheritance & Polymorphism

Member Posts: 2
[B]HELLO Im New Here! ..and having problems about this ..I am doing #2 which requires #1. And im done with my code. and i have this little confuse about the Cylinder class here's the question :[/B]
[QUOTE][I]3. Every cylinder has a base and height, where the base is a circle. Design the class CYLINDER that can capture the properties of a cylinder and perform the usual operations on a cylinder. Derive this from the class CIRCLE designed in No.2. Some operations that can be performed by the cylinder are as follows: calculate and print the volume, calculate and print the surface area, set the height, set the radius of the base, and set the center of the base. [/I][/QUOTE]
[B]Im confuse about this because of Polymorphism.. I miss the lecture because im late..but im doing a self study but about this problem i cant understand and do the coding.. but i have already done in inheritance the questions & coding of 1 and 2.. here is my code for #1[/B]
[B][I]This is for Point.java[/I][/B]
[CODE]class Point
{
// Declare variables
private double x;
private double y;

// Empty constructor
public Point()
{
}

// Constructor with variables
public Point(double x, double y)
{
this.x = x;
this.y = y;
}

// Used to set the new x-coordinate
public void setX(double x)
{
this.x = x;
}

// Used to set the new y-coordinate
public void setY(double y)
{
this.y = y;
}

// Used to display the x-coordinate
public double getX()
{
return x;
}

// Used to display the y-coordinate
public double getY()
{
return y;
}
}[/CODE]

[B][I]This is for the Circle.java which extends Point.java[/I][/B]

[CODE]import java.lang.*;

public class Circle extends Point
{
// Declare variables
private double r;

// Empty constructor
public Circle()
{
}

// Constructor with variables
public Circle(double x, double y, double r)
{
super(x, y);
this.r = r;
}

// Used to set the radius
public void setR(double r)
{
this.r = r;
}

// Used to return the radius
public double getR()
{
return r;
}

// Calculates the area
public double area()
{
return Math.PI*r*r;
}

// Calculates the circumference
public double circumference()
{
return 2*Math.PI*r;
}
}[/CODE]

[B][I]And Ive created a class to test my Code which i named Tester.java[/I][/B]

[CODE]import java.util.*;

public class Tester
{
static Scanner console = new Scanner(System.in);
public static void main(String[] args)
{
// Declare variables
int loopDecision, xC, yC, rC;

// Loop statement
System.out.println("Enter 1 to insert your own values. " +
"Enter 2 to use preset values.");
loopDecision = console.nextInt();

/* If 1 is chosen then it goes into the if loop.
* In the if loop the user will be able to set their
* own coordinates and radius. They will then get the
* area of the circle and the circumference. */
if(loopDecision == 1)
{
// Ask user to input values
System.out.println("Enter a number 1-10 for the X coordinate.");
xC = console.nextInt();
System.out.println("Enter a number 1-10 for the Y coordinate.");
yC = console.nextInt();
rC = console.nextInt();
System.out.println();

// Set the Circle class.
Circle p = new Circle(xC, yC, rC);

// Display their entered values
System.out.println("X coordinate = " + p.getX());
System.out.println("Y coordinate = " + p.getY());
System.out.println();

// These two for loops display the values on the side and bottom

for(int i = 10; i > 0; i--)
{
System.out.println(i);
}
for(int i = 1; i <= 10; i++)
{
System.out.print(" " + i);
}

System.out.println();
// Display the area and circle
System.out.println("Area of the circle = " + p.area());
System.out.println("Circumference of the circle = " + p.circumference());
}

/* In the else loop the user will be able to see
* the varius functions of the program. Using preset
* values assigned by me. */
else
{
// Set the values
Circle p = new Circle(10, 3, 5);
System.out.println();

// Display the starting values
System.out.println("Initial x-coordinate = " + p.getX());
System.out.println("Initial y-coordinate = " + p.getY());
System.out.println();

// These two for loops display the values on the side and bottom
for(int i = 10; i > 0; i--)
{
System.out.println(i);
}
for(int i = 1; i <= 10; i++)
{
System.out.print(" " + i);
}

System.out.println();
System.out.println("Initial radius = " + p.getR());

System.out.println();
System.out.println("Now changing the values.");
System.out.println();

// Set new values
p.setX(5);
p.setY(10);
p.setR(4);

// Display the new values
System.out.println("X coordinate = " + p.getX());
System.out.println("Y coordinate = " + p.getY());
System.out.println();

// These two for loops display the values on the side and bottom
for(int i = 10; i > 0; i--)
{
System.out.println(i);
}
for(int i = 1; i <= 10; i++)
{
System.out.print(" " + i);
}

System.out.println();
System.out.println();