public class Solution {
public static void main(String[] args) {
Apple apple = new Apple();
apple.addPrice(50);
Apple apple2 = new Apple();
apple2.addPrice(100);
System.out.println("Стоимость яблок " + Apple.applesPrice);
}
public static class Apple {
public static int applesPrice = 0;
public static void addPrice(int applesPrice) {
//напишите тут ваш код
Apple.applesPrice = Apple.applesPrice + applesPrice;
}
}
}
Ivan Re
12 уровень
объясните как работает пожалуйста, вообще запутала задача
Обсуждается
Комментарии (5)
- популярные
- новые
- старые
Для того, чтобы оставить комментарий Вы должны авторизоваться
Filipp
27 февраля 2020, 09:50
vk, благодарю. Самое понятное объяснение.
0
Ivan Re
5 февраля 2020, 11:45
Спасибо огромное, вроде прояснилось, остался один вопрос. Разве статическая перменная изменяется? или как происходит сложение, запутался со статикой и не статикой. Прошу прощение за глупые вопросы =)
0
hidden #598481
28 февраля 2020, 07:39
статическая - не значит неизменяемая, статическая - значит общая для всех членов класса, относящаяся к самому классу.
У класса Apple переменная price статическая, т.к. цена одна на все яблоки, сколько бы их не было. Класс Apple как бы говорит: "у яблок есть цена, столько-то". И когда ты ее изменяешь, она изменяется у всех яблок, а не у каких-то отдельно взятых apple1 и apple2
+3
hidden #598481
5 февраля 2020, 11:36
Фиолетовый - это значение статической переменной на каждом этапе.
Желтым - значение передаваемых параметров
Пунктирными стрелками показано откуда куда передаются значения.
![]()
+20
Алексей Чернавцев
28 февраля 2020, 03:10
лучшее объяснение! огромное спасибо
0