#java #oop
#java #ооп
Вопрос:
При создании программы класса circle. Я столкнулся с ошибкой в разделе моего драйвера. Ошибка заключается в исключении в потоке «main» java.lang.Ошибка: неразрешенные проблемы с компиляцией: LastLab не может быть преобразован к типу LastLab не может быть преобразован к типу в Task1.Mainclass.main(Mainclass.java: 18)
Это мой метод и код поля данных
public class Circle {
private final double PI = 3.14159;
private double radius;
public void Circle(double rad) {
radius = rad;
}
public void setRadius(double rad) {
radius = rad;
}
public double getRadius() {
return radius;
}
public double getArea() {
return PI * radius * radius;
}
public double getDiameter() {
return radius * 2;
}
public double getCircumference() {
return 2 * PI * radius;
}
}
Это мой код драйвера
public class Mainclass {
public static void main(String... args) {
// Create a Scanner object for keyboard input.
Scanner keyboard = new Scanner(System.in);
// Get the radius from user;
System.out.print("Enter the radius of your circle:");
double radius = keyboard.nextDouble();
// Create a circle object.
LastLab circle = new LastLab();
// Get data from circle and display it
System.out.println("The circle's area is: " circle.getArea());
System.out.println("The circle's diameter is: " circle.getDiameter());
System.out.println("The circle's circumference is: " circle.getCircumference());
}
}
Ответ №1:
Circle circle = new Circle();
У вас неверное объявление: LastLab circle = new LastLab();
И вы неправильно объявили конструктор для Circle
. Проверьте это:
public class Circle {
private static final double PI = 3.14159;
private final double radius;
public Circle(double radius) {
this.radius = radius;
}
public double getRadius() {
return radius;
}
public double getArea() {
return PI * radius * radius;
}
public double getDiameter() {
return radius * 2;
}
public double getCircumference() {
return 2 * PI * radius;
}
}
public class Mainclass {
public static void main(String... args) {
Scanner sca = new Scanner(System.in);
System.out.print("Enter the radius of your circle: ");
Circle circle = new Circle(sca.nextDouble());
System.out.format(Locale.ENGLISH, "The circle's area is: %.2fn", circle.getArea());
System.out.format(Locale.ENGLISH, "The circle's diameter is: %.2fn", circle.getDiameter());
System.out.format(Locale.ENGLISH, "The circle's circumference is: %.2fn", circle.getCircumference());
}
}