Sobes.tech
Intern

Czym jest klasa w języku Ruby?

sobes.tech AI

Odpowiedź od AI

Klasa w Ruby to wzorzec lub schemat do tworzenia obiektów. Określa strukturę (dane/atrybuty) i zachowanie (metody), które będą miały instancje tej klasy.

Kluczowe cechy:

  • Enkapsulacja: Łączy dane i metody operujące na tych danych w jedną całość.
  • Dziedziczenie: Pozwala tworzyć nowe klasy (podklasy) na podstawie istniejących (nadklas), dziedzicząc ich cechy i zachowania.
  • Polimorfizm: Umożliwia obiektom różnych klas reagowanie na ten sam wywołanie metody w sposób specyficzny dla ich typu.

Przykład prostej klasy:

class Dog
  # Konstruktor klasy
  def initialize(name, breed)
    @name = name # Atrybut instancji
    @breed = breed # Atrybut instancji
  end

  # Metoda instancji
  def bark
    "#{@name} mówi Hau!"
  end

  # Getter dla atrybutu
  def name
    @name
  end
end

# Tworzenie instancji klasy (obiektu)
my_dog = Dog.new("Bobic", "Bezdomny pies")

# Wywołanie metody instancji
puts my_dog.bark # Wyjście: Bobic mówi Hau!
puts my_dog.name # Wyjście: Bobic

Klasy w Ruby są obiektami pierwszej klasy, można je również dynamicznie modyfikować.