Що таке екземпляр класу в Ruby?

В Ruby екземпляр класу (або об’єкт класу) є конкретною реалізацією класу, створеною за допомогою класу як шаблону. У Ruby, класи використовуються для створення об’єктів, які можуть мати свої власні атрибути (змінні екземпляра) і методи (функції), що визначають їх поведінку.

Ось основні кроки для створення екземпляра класу в Ruby:

  1. Оголошення класу: Спочатку потрібно оголосити клас за допомогою ключового слова class.
  2. Створення екземпляра: Після оголошення класу можна створити його екземпляр за допомогою методу new.

Приклад

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

  # Метод для доступу до змінної @name або гетер
  def name
    @name
  end

  # Метод для доступу до змінної @breed або гетер
  def breed
    @breed
  end

  # Метод, що визначає поведінку об'єкта
  def bark
    puts "Woof!"
  end
end

# Створення екземпляра класу Dog
dog = Dog.new("Rex", "Labrador")

# Виклик методів екземпляра класу
puts dog.name    # => Rex
puts dog.breed   # => Labrador
dog.bark         # => Woof!

Пояснення

  1. Оголошення класу: Клас Dog оголошується за допомогою ключового слова class.
  2. Конструктор класу: Метод initialize є конструктором, який викликається автоматично при створенні нового екземпляра класу. Він приймає два аргументи (name та breed) і ініціалізує змінні екземпляра @name та @breed.
  3. Методи екземпляра: Метод name повертає значення змінної @name, метод breed повертає значення змінної @breed, а метод bark виводить рядок “Woof!”.
  4. Створення екземпляра: Новий екземпляр класу створюється за допомогою методу new, і екземпляр dog ініціалізується з ім’ям “Rex” та породою “Labrador”.
  5. Виклик методів: Метод name повертає ім’я собаки, метод breed повертає породу, а метод bark виводить звук гавкоту.

Таким чином, екземпляр класу в Ruby представляє собою конкретний об’єкт, який створений на основі визначення класу і має свої власні дані та методи.

В контексті об’єктно-орієнтованого програмування (ООП), екземпляр класу (або об’єкт) є конкретною реалізацією класу. Клас служить як шаблон або схема, що визначає атрибути (властивості) і методи (функції), які матимуть всі його екземпляри.