package com.javarush.task.task05.task0522;
/*
Максимум конструкторов
*/
public class Circle {
public double x;
public double y;
public double radius;
public Circle(double x, double y, double radius){
this.x = x;
this.y = y;
this.radius = radius;
}
public Circle(double x, double y){
this.x = x;
this.y = y;
}
public Circle(double x){
this.x = x;
}
public Circle(){
this(x,y,radius);
}
//напишите тут ваш код
public static void main(String[] args) {
}
}
Не могу понять - что не так. Ошибки компиляции.
Ошибка в файле com/javarush/task/task05/task0522/Circle.java в строке 28
cannot reference x before supertype constructor has been called
И так по очереди на все переменные (y и radius)Tim Morrison
6 уровень
не компилируется
Решен
Комментарии (2)
- популярные
- новые
- старые
Для того, чтобы оставить комментарий Вы должны авторизоваться
Pavlo Plynko Java-разработчик в CodeGym Expert
17 октября 2017, 10:53решение
До того как отработал конструктор по умолчанию - объект еще не создан. Соотв. нельзя получить значения полей не существующего объекта.
+2
--------Master
17 октября 2017, 09:33
А откуда в последнем конструкторе (по умолчанию) должны взяться передаваемые значения x, y, radius, если они в вызываемом конструкторе только и инициализируются
0