У меня есть назначение структур данных, и я смог скомпилировать свой первый код, но я не понимаю, как получить доступ к информации. Вот инструкции. (извините, что они длинны)Инкапсуляция, расчет радиуса, диаметра, площади.
Создайте класс с именем Circle с радиусом, диаметром и площадью поля. Включите конструктор, который устанавливает радиус в 1 и вычисляет два других значения. Включите методы с именем setRadius() и getRadius(). Метод setRadius() не только устанавливает радиус, но и вычисляет два других значения (как вы знаете, диаметр круга вдвое превышает радиус, площадь круга равна pi, умноженному на квадрат радиуса). Сохраните класс как Circle.java. Создайте класс с именем TestCircle, основной метод которого() объявляет несколько объектов Circle. Используя метод setRadius(), присвойте одному кругу небольшое значение радиуса (введите пользовательский ввод с использованием сканера JOptionPane) и назначьте другое значение большего радиуса (также как и вход пользователя). Не присваивайте значение радиусу третьего круга; вместо этого сохраните значение, назначенное при построении объекта. Отобразите все значения для трех объектов Circle. Сохраните класс как TestCircle.java.
И мой первый Heres класс
public class Circle {
public int radius = 1;
public double diameter;
public double area;
//Constructor for circle class
public double Circle(int First){
return radius;
}
//Start set and get for radius
private double setRadius(int r){
return radius = 5;
}
private double getRadius(){
return radius;
}
//Start set and get for diameter
public double setDiamter(double d){
return diameter = 7;
}
public double getDiamter(){
return radius * diameter;
}
//Start set and get for diameter
public double setArea(double a){
return area;
}
public double getArea(){
return area * Math.PI * 2;
}
}
И мой тестовый код, который должен вызвать все первое вычисление ... Я не могу получить первый расчет, чтобы работать так, я прошу о помощи в том, сделать это.
import java.util.Scanner;
public class TestCircle {
public static void main(String[] arges) {
TestCircle C1 = new TestCircle();
Scanner FirstNum = new Scanner(System.in);
System.out.print("Enter a number between 1 and 10 to calculate the diamater");
First = inputDevice.nextInt; //here is where i thought i could call the First method from the other document. but i'm wrong
}
}
Ваш конструктор неверен. Конструктор не должен иметь тип возврата. – heavyhorse
@ Блинди, мне это не нужны? –
@ lacraig2, вторая нить в строке, где вам было бы лучше не отвечать. Он имеет отдельное поле диаметра от поля радиуса, и он устанавливает их независимо. Я, вероятно, не должен это объяснять вам, вы действительно не знаете, как выглядит круг. – Blindy