раз мы Apple.applesPrice = Apple.applesPrice + applesPrice;
так applesPrice = 0
откуда он посчитал 150?
не понимаю как это работает?
откуда берется Apple.appelsPrice? это типа мы обращаемся к обьекту из другого класса?
Максим
4 уровень
Как это работает?
Решен
Комментарии (4)
- популярные
- новые
- старые
Для того, чтобы оставить комментарий Вы должны авторизоваться
Ruslan Shaykhutdinov Backend Developer
24 сентября 2020, 18:16
Apple.applesPrice и applesPrice разные переменные, applesPrice в этом случае переменная параметр, которая содержит аргумент, которые передают при вызове
apple.addPrice(50);
apple2.addPrice(100);
работает как:
Apple.applesPrice = Apple.applesPrice + 50;
Apple.applesPrice = Apple.applesPrice + 100;
0
Сергей Мельяда
25 сентября 2020, 20:18
Вот я тоже не особо понимаю.
Если мы напишем в методе
Apple.applesPrice = applesPrice;
То в итоге получим цену 100 а не 50.
Я не понимаю, последовательность передачи аргументов. По идее же выводит с начала 50, а потом 100.
0
Ruslan Shaykhutdinov Backend Developer
26 сентября 2020, 05:14
Apple.applesPrice и applesPrice это разные переменные.
Если Вы присвоите в методе Apple.applesPrice = applesPrice, то Apple.applesPrice будет содержать значение, которое передали последним через вызов метода, поэтому и получается 100. Ну а в первом варианте Apple.applesPrice это сумма всех переданных аргументов.
0
Сергей Мельяда
27 сентября 2020, 09:47
Да, спасибо! Разобрался, посмотрел через Дебагер и понял)
0