- почему здесь две точки и не с большой буквы?
допустим я вызываю метод тогда все должно быть с маленькой буквы....
....
ок, setDescription - это метод который нам нужен, понятно.
что такое " circle.color."? - допустим color это объект. по типу cat1.name = "Vasya"; , т.е. если бы команда была такая:
color.setDescription("Red"); , я бы понял. Но причем тут circle? ...нашел, в main мы объявили объект(можете поправить если я не правильно терминалогию использую) "circle".
... Получается что есть class Circle, он главный, в нем есть вложенный клас color в котором есть метод "сеттер" и для того чтобы достучаться до этого сеттера нам нужно сначала стучать(искать) class Circle там Color, а в нем сам метод. А с маленькой буквы потому что мы не к класу напрямую обращаемся а к объекту, а объект пишется с маленькой буквы.
Мысль верная, я не ошибаюсь?
REM
29 уровень
не понимаю строку circle.color.setDescription("Red");
Решен
Комментарии (2)
- популярные
- новые
- старые
Для того, чтобы оставить комментарий Вы должны авторизоваться
Albert
16 октября 2018, 13:44
///"Получается что есть class Circle, он главный, в нем есть вложенный клас color в котором есть метод "сеттер" и для того чтобы достучаться до этого сеттера нам нужно сначала стучать(искать) class Circle там Color, а в нем сам метод. А с маленькой буквы потому что мы не к класу напрямую обращаемся а к объекту, а объект пишется с маленькой буквы. "///
ход мыслей ведешь в правильном направлении.
Главный класс = это Cirle, в нем есть вложенный класс Color, чтобы передать цвет программа должна обратиться к методу в классе Color. А чтобы обратиться к этому классу надо создать объект этого класса, а потом через него вызывать методы этого класса.
Таким образом: public Color color - это ссылка (затем через конструктор создали объект и приравняли к этой ссылке). Теперь можем делать так = (после объявления объекта класса Circle)
cirle.color._______ (после точки указываем любой интересующий нас метод или переменная класса Color).
+1
--------Master
15 октября 2018, 19:32
В случае cat1.name точно так же можно вызвать, например, cat1.name.length() или cat1.name.toUpperCase() - методы класса String, к которому относится name - поле класса, к которому относится cat1
0