Как я понимаю, apple.addPrice(50) есть изначальная цена яблок, а apple2.addPrice(100); та увеличенная сума, которую мы должны вывести. Да, кстати, здесь условие неясное: "чтобы при его вызове суммарная стоимость яблок увеличивалось на переданное значение". Почему просто не указали изначальной цены и цену на которую надо увеличить, или там увеличить такую-то суму в 1,5/,2/,3 раза? А то так непонятно что на что именно надо увеличивать. Так что, насколько я понял условие нужно в переменной типа int по имени applesPrice, которая имеет значение 0 увеличить значение к 100. Что я и сделал.
applesPrice = apple2.addPrice; //я взял переменную applesPrice и дал ей значение объекта apple2.addPrice(100);.
Однако, apple2 IDEA выделяет красным и программу не компилирует, выбивает ошибку, мол не может найти объект apple2.addPrice. Это натолкнуло меня на мысль, что, возможно, эти объекты "невидимы"(недоступны) для метода addPrice, тем более, что лекция (которую, я честно говоря не понял) называется "Еще об области действия переменных".
Но если так, то как мы должны значениями в этих объектах манипулировать? Ведь в условиях же очевидно, что мы должны пользоваться значениями в этих объектах.
package com.javarush.task.task04.task0402;
/*
Цена яблока
*/
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("Apples price is " + Apple.applesPrice);
}
public static class Apple {
public static int applesPrice = 0;
public static void addPrice(int applesPrice) {
//напишите тут ваш код
applesPrice = apple2.addPrice;
}
}
}