Условие задачи напишу ниже. Правильное решение я посмотрел, но суть все так и не понял. В class Window private значения, как window.changeSize(4, 5); получает на них доступ, обычно использовали геттер сеттер для таких случаев???
public class Solution {
public static void main(String[] args) {
Window window = new Window();
window.printSize();
window.changeSize(4, 5);
window.printSize();
}
}
public class Window {
private int height = 2;
private int width = 3;
public void changeSize(int height, int width){
height = height;
width = width;
}
public void printSize(){
System.out.println("Height = " + height);
System.out.println("Width = " + width);
}
}
Ильназ
14 уровень
решение без геттер сеттер???
Обсуждается
Комментарии (3)
- популярные
- новые
- старые
Для того, чтобы оставить комментарий Вы должны авторизоваться
Hack
23 марта 2025, 15:02
потому что метод в классе Window не статический по этому ечть скырытый параметр this
+1
hidden #598481
7 октября 2022, 08:47
Сеттер - это такой же метод, как и changeSize, только называется по-другому. Делать сеттер - это общепринятая практика, сеттер устанавливает значение одного поля. Но ничто не мешает тебе написать свой метод, который будет устанавливать значение сразу нескольким полям и сделать его публичным, как и сделано в этом решении.
PS что такое height = height, width = width?этот код не делает ничего. Если у тебя поле класса и локальная переменная в методе называются одинаково, то для обращение к полю класса используй this:
+4
Ильназ
7 октября 2022, 08:54
Спасибо большое.
0