Sobes.tech
Intern

Šta je klasa u Ruby jeziku?

sobes.tech АИ

Одговор од АИ

Klasa u Ruby je šablon ili plan za kreiranje objekata. Ona definiše strukturu (podatke/atribute) i ponašanje (metode) koje će imati instance te klase.

Ključne osobine:

  • Enkapsulacija: Kombinuje podatke i metode koje rade sa tim podacima u jedinstvenu celinu.
  • Nasleđivanje: Omogućava kreiranje novih klasa (potklasa) baziranih na postojećim (nadklasama), nasleđujući njihove osobine i ponašanje.
  • Polimorfizam: Omogućava objektima različitih klasa da reaguju na isti poziv metode na specifičan način za svoj tip.

Primer jednostavne klase:

class Dog
  # Konstruktor klase
  def initialize(name, breed)
    @name = name # Atribut instance
    @breed = breed # Atribut instance
  end

  # Metoda instance
  def bark
    "#{@name} kaže Grr!"
  end

  # Getter za atribut
  def name
    @name
  end
end

# Kreiranje instance klase (objekta)
my_dog = Dog.new("Bobic", "Pas lutalica")

# Pozivanje metode instance
puts my_dog.bark # Izlaz: Bobic kaže Grr!
puts my_dog.name # Izlaz: Bobic

Klase u Ruby su objekti prve klase, takođe ih je moguće dinamički menjati.