0
why in ruby?
Для чего в руби attr_acessor, attr_reader and attr_writer как их можно использовать? Google translate What are attr_acessor, attr_reader and attr_writer for in ruby, how can they be used?
1 Answer
+ 1
Они нужны для редактирования переменной в классе, чтения или и того и другого. Изначально переменные в классе ruby инкапсулированы, и к ним никак не получить доступ. Чтобы это было возможно, в классе добавляется такой вот метод с указанием переменных, к которым он может применяться. Расшифровать это все можно так:
def a(b = @a) #read and set
@a = b
return @a
end
Если не прописывать эти методы и попытаться получить доступ к такой переменной, предположим, класса Class с помощью Class.a или Class.@a — мы получим ошибку.