Что такое Singleton-метод?

Этот вопрос проверяет понимание уникальных методов, принадлежащих одному конкретному объекту.

Короткий ответ

Singleton-метод — это метод, который определён для одного конкретного объекта, а не для класса, к которому он принадлежит.

Длинный ответ

Singleton-метод позволяет добавить индивидуальное поведение конкретному объекту. Это полезно, когда нужно изменить или дополнить функциональность одного экземпляра класса, не затрагивая остальные объекты этого класса.

 

Пример Singleton-метода:

str = "Hello"

def str.reverse_words
  self.split.reverse.join(" ")
end

puts str.reverse_words # => "Hello"

 

Здесь метод reverse_words добавлен только объекту str. Другие строки не будут иметь такого метода:

another_str = "World"
puts another_str.reverse_words # => Ошибка, метод не определён

 

Eigenclass:
- Singleton-методы хранятся в специальном объекте — eigenclass (собственный класс объекта).


Singleton-методы полезны для добавления уникальных возможностей конкретным объектам без изменения всего класса.

Уровень

  • Рейтинг:

    3

  • Сложность:

    7

Навыки

  • Ruby

Подпишись на Ruby Developer в телеграм