Sobes.tech
Intern

Ruby tilida sinf nima?

sobes.tech AI

AIdan javob

Ruby'da sinf, obyektlar yaratish uchun shablon yoki chizma hisoblanadi. U bu sinfning nusxalari bo'ladigan obyektlarning tuzilishini (ma'lumotlar/atributlar) va xulq-atvorini (usullar) belgilaydi.

Asosiy xususiyatlar:

  • Inkapsulyatsiya: Ma'lumotlar va ular bilan ishlovchi usullarni yagona birlikda birlashtiradi.
  • Merosi: Mavjud sinflardan (ota sinflar) yangi sinflar (voris sinflar) yaratishga imkon beradi, ularning xususiyatlari va xulq-atvorini meros qilib oladi.
  • Polimorfizm: Turli sinflarga mansub obyektlar bir xil usul chaqiruviga o'ziga xos tarzda javob berish imkonini beradi.

Oddiy sinf misoli:

class Dog
  # Sinf konstruktor
  def initialize(name, breed)
    @name = name # Obyekt atributi
    @breed = breed # Obyekt atributi
  end

  # Obyekt usuli
  def bark
    "#{@name} Guau! deb aytadi"
  end

  # Atribut uchun getter
  def name
    @name
  end
end

# Sinfdan obyekt yaratish (instansiya)
my_dog = Dog.new("Bobic", "Yashash joyi bo'lmagan it")

# Obyekt usulini chaqirish
puts my_dog.bark # Chiqish: Bobic Guau!
puts my_dog.name # Chiqish: Bobic

Ruby'da sinflar birinchi darajali obyektlardir, ular ham dinamik tarzda o'zgartirilishi mumkin.