Каким образом здесь один конструктор вызывает другой?
Даниил Симоненков
10 уровень
Решил но не понял
Обсуждается
Комментарии (5)
- популярные
- новые
- старые
Для того, чтобы оставить комментарий Вы должны авторизоваться
Даниил Симоненков
20 февраля 2020, 17:07
public Circle (double x, double y, double radius) {
this.x = x;
this.y = y;
this.radius = radius;
}
public Circle () {
this (1, 2, 3);
}
0
hidden #2139695
20 февраля 2020, 17:13
здес this (1, 2, 3); равносилно если мы написали
this.x = 1;
this.y = 2;
this.radius = 3;
то есть вызывается Circle (double x, double y, double radius)
посмотри этот пост https://javarush.com/groups/posts/793-vihzov-konstruktora-iz-konstruktora
+1
hidden #2139695
20 февраля 2020, 16:57
коду не видно
0
Даниил Симоненков
20 февраля 2020, 17:06
package com.javarush.task.task05.task0522;
/*
Максимум конструкторов
*/
public class Circle {
public double x;
public double y;
public double radius;
public Circle (double x) {
this.x = x;
0
hidden #2139695
20 февраля 2020, 17:26
вот например этот код что выводит по твоему:
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,y,10);
}
public Circle() {
this(5, 5, 1);
}
}
public class Main {
public static void main(String[] args) {
// write your code here
Circle circle = new Circle();
System.out.println(circle.x + " " + circle.y + " " + circle.radius);
Circle anotherCircle = new Circle(10, 5);
System.out.println(anotherCircle.x + " " + anotherCircle.y + " " + anotherCircle.radius);
}
}
выводить
5.0 5.0 1.0
10.0 5.0 10.0
что и логично
0