Size: a a a

2020 July 17

DM

Dmitriy Tensei Malys... in RubyRush
Владислав
Давайте с начала. Метод инициалайз с параметром name - к какому из методов name внутри класса он(инитиализ) обратится, чтобы получить значение?
Parent.new('str') вызовет initialize(str), дальше как я выше написал
источник

DM

Dmitriy Tensei Malys... in RubyRush
если вы напишите Parent.new просто без передачи данных, в @name запишется nil, потому что @name = str (тут str nil), вы туда не передали ничего
источник

Э

Эдем in RubyRush
Владислав
Давайте с начала. Метод инициалайз с параметром name - к какому из методов name внутри класса он(инитиализ) обратится, чтобы получить значение?
Типа в этой строке @name = name в конструкторе?
Интерпретатор сначала ищет локальные переменные, потом уже методы ищет. В данном случае переданный в конструктор параметр является локальной переменной, хотя есть и одноимённый метод
В этом вопрос?
источник

EE

Ekaterina Egorova in RubyRush
да кстати меня тоже это путало
источник

DM

Dmitriy Tensei Malys... in RubyRush
я на вот этих все объектах, ООП и провалился на синетики в конце 1 месяца
источник

DM

Dmitriy Tensei Malys... in RubyRush
:D
источник

EE

Ekaterina Egorova in RubyRush
вы попробуйте с другими названиями поиграться в initialize
источник

DM

Dmitriy Tensei Malys... in RubyRush
проще всего попробовать и поиграться
источник

DM

Dmitriy Tensei Malys... in RubyRush
с методами и передачей разных штук туда
источник

EE

Ekaterina Egorova in RubyRush
чтобы дошло что где - а потом наоборот это помогает что одинаковое название когда уже много кода
источник

EE

Ekaterina Egorova in RubyRush
def initialize(name_of_your_choice)
 @name = name_of_your_choice
end

def name
 @name
end


мне вот этот момент был по-началу не понятен
источник

В

Владислав in RubyRush
Ekaterina Egorova
нужны геттеры
Геттеры я понимаю для чего нужны, например, когда надо вытащить какую то переменную, вот и создаётся метод,который ее возвращает
источник

EE

Ekaterina Egorova in RubyRush
ага так
источник

AV

Alexander Vladimirov in RubyRush
Ну а сеттеры позволяют эту переменную изменить из вне
источник

EE

Ekaterina Egorova in RubyRush
initialize не понятен? ну это старшие товарищи пусть поясняют - по-простому это для удобства чтоб нам этим не морочиться - единый механизм - new(отправляешь_что_то) - initialize(принимаешь_это)
источник

В

Владислав in RubyRush
Эдем
Типа в этой строке @name = name в конструкторе?
Интерпретатор сначала ищет локальные переменные, потом уже методы ищет. В данном случае переданный в конструктор параметр является локальной переменной, хотя есть и одноимённый метод
В этом вопрос?
Переменной name нет же , поэтому он обратиться в методу name, к какому из них?
источник

DM

Dmitriy Tensei Malys... in RubyRush
Владислав
Переменной name нет же , поэтому он обратиться в методу name, к какому из них?
name= и name разные методы
источник

EE

Ekaterina Egorova in RubyRush
ааа поняла вопрос
источник

Э

Эдем in RubyRush
Владислав
Переменной name нет же , поэтому он обратиться в методу name, к какому из них?
Она есть, т.к. мы в конструктор передали в виде параметра в скобках
источник

Э

Эдем in RubyRush
def method(arg)
 puts arg
end
источник