package com.javarush.task.task05.task0510;
/*
Кошкоинициация
*/
public class Cat {
private String name = null, color = "", address = null;
private int weight = 4, age = 4;
public void initialize(String name){
this.name = name;
this.color = this.color;
this.weight = this.weight;
this.age = this.age;
}
public void initialize(String name, int weight, int age){
this.name = name;
this.weight = weight;
this.age = age;
}
public void initialize(String name, int age){
this.name = name;
this.age = age;
this.weight = this.weight;
this.color = this.color;
}
public void initialize(int weight, String color){
this.weight = weight;
this.color = color;
this.age = this.age;
}
public void initialize(int weight, String color, String address){
this.weight = weight;
this.color = color;
this.address = address;
this.age = this.age;
}
public static void main(String[] args) {
}
}
Вадим
35 уровень
Так вообще можно делать?
Архивный
Комментарии (3)
- популярные
- новые
- старые
Для того, чтобы оставить комментарий Вы должны авторизоваться
hidden #598481
12 декабря 2018, 17:00решение
Начнем с того, что не нужно присваивать никаких дефолтных значений полям до инициализации
Не присваивать значений - значит вообще ничему не приравнивать, вообще знака равно быть не должно, просто перечислить.
Значения ты присваиваешь как раз при инициации.
Ты пишешь
Когда у тебя два параметра и требуется три поля проинициализировать, третьему полю как раз и нужно назначить какое-то дефолтное значение. Здесь можешь с чистой совестью писать this.age = 4; например. +3
Вадим
13 декабря 2018, 16:32
Спасибо!
0
--------Master
12 декабря 2018, 16:53
Как именно?
0