Sobes.tech
Intern

Mis on klass Ruby keeles?

sobes.tech AI

Vastus AI-lt

Klass Ruby-s on mall või mustertöö objektide loomiseks. See määratleb struktuuri (andmed/atribuudid) ja käitumise (meetodid), mida selle klassi eksemplarid omavad.

Peamised omadused:

  • Kapseldus: Koondab andmed ja meetodid, mis töötavad nende andmetega, ühte tervikusse.
  • Pärimine: Võimaldab luua uusi klasse (alamklasse) olemasolevate (vanemate) klasside põhjal, pärides nende omadused ja käitumise.
  • Polümorfism: Annab võimaluse erinevatel klassidel olevatel objektidel reageerida sama meetodi kutsungile spetsiifiliselt vastavalt nende tüübile.

Näide lihtsast klassist:

class Dog
  # Klassikonstructor
  def initialize(name, breed)
    @name = name # Näidise atribuut
    @breed = breed # Näidise atribuut
  end

  # Näidise meetod
  def bark
    "#{@name} ütleb Gaw!"
  end

  # Getter atribuudile
  def name
    @name
  end
end

# Klassist eksemplari loomine (objekt)
my_dog = Dog.new("Bobic", "Tänavakoer")

# Näidise meetodi kutsumine
puts my_dog.bark # Väljund: Bobic ütleb Gaw!
puts my_dog.name # Väljund: Bobic

Ruby klassid on esimese klassi objektid, neid saab ka dünaamiliselt muuta.