Назад к вопросам
Intern
105
questionbank

Что такое класс в языке Ruby?

Sobes Copilot

Получайте ответы в реальном времени

Ответ от нейросети

sobes.tech AI

Класс в Ruby — это шаблон или чертеж для создания объектов. Он определяет структуру (данные/атрибуты) и поведение (методы), которые будут иметь экземпляры этого класса.

Ключевые особенности:

  • Инкапсуляция: Объединяет данные и методы, работающие с этими данными, в единую сущность.
  • Наследование: Позволяет создавать новые классы (потомки) на основе существующих (предков), наследуя их характеристики и поведение.
  • Полиморфизм: Позволяет объектам разных классов реагировать на один и тот же вызов метода специфичным для своего типа образом.

Пример простого класса:

class Dog
  # Конструктор класса
  def initialize(name, breed)
    @name = name # Атрибут экземпляра
    @breed = breed # Атрибут экземпляра
  end

  # Метод экземпляра
  def bark
    "#{@name} говорит Гав!"
  end

  # Геттер для атрибута
  def name
    @name
  end
end

# Создание экземпляра класса (объекта)
my_dog = Dog.new("Бобик", "Дворняга")

# Вызов метода экземпляра
puts my_dog.bark # Вывод: Бобик говорит Гав!
puts my_dog.name # Вывод: Бобик

Классы в Ruby являются объектами первого класса, их тоже можно изменять динамически.