Поиск по сайту:
Не удивление, а недоумение и печаль суть начало философии (А. Шопенгауэр).

Ruby — Классы и объекты

[wtr-time]
1 Звезда2 Звезды3 Звезды4 Звезды5 Звезд (1 оценок, среднее: 5,00 из 5)
Загрузка...
12.06.2018
Язык программирования Ruby

Ruby — идеальный объектно-ориентированный язык программирования. К особенностям объектно-ориентированного языка программирования относятся:

  • Инкапсуляция данных
  • Абстракция данных
  • Полиморфизм
  • наследование

Эти функции обсуждаются в главе Object Oriented Ruby .

Объектно-ориентированная программа включает в себя классы и объекты. Класс — это проект, из которого создаются отдельные объекты. В объектно-ориентированных терминах мы говорим, что ваш bicycle является примером class of objects, известных как велосипеды.

Возьмите пример любого автомобиля. Он включает в себя колеса, мощность и мощность топливного бака или бензобака. Эти характеристики формируют данные членов класса Vehicle. С помощью этих характеристик вы можете отличить одно транспортное средство от другого.

У транспортного средства также могут быть определенные функции, такие как остановка, вождение и ускорение. Даже эти функции образуют данные членов класса Vehicle. Таким образом, вы можете определить класс как комбинацию характеристик и функций.

Класс Vehicle может быть определен как:

Class Vehicle {

   Number no_of_wheels
   Number horsepower
   Characters type_of_tank
   Number Capacity
   Function speeding {
   }
   
   Function driving {
   }
   
   Function halting {
   }
}

 

Назначая разные значения этим членам данных, вы можете сформировать несколько экземпляров класса Vehicle. Например, самолет имеет три колеса, мощность 1000, топливо как тип бака и мощность 100 литров. Точно так же автомобиль имеет четыре колеса, мощность 200, газ в качестве типа бака и емкость 25 литров.

Определение класса в Ruby

Чтобы реализовать объектно-ориентированное программирование с помощью Ruby, вам нужно сначала изучить, как создавать объекты и классы в Ruby.

Класс в Ruby всегда начинается с ключевого слова class, за которым следует имя класса. Имя всегда должно быть в первоначальных капиталах. Класс Customer может отображаться как:

class Customer
end

 

Вы завершаете класс, используя ключевое слово end . Все члены данных в class находятся между определением класса и ключевым словом end.

Переменные в классе Ruby

Ruby предоставляет четыре типа переменных:

  • Локальные переменные — Локальные переменные — это переменные, определенные в методе. Локальные переменные недоступны вне метода. В следующей главе вы увидите более подробную информацию о методе. Локальные переменные начинаются с строчной буквы или _.
  • Переменные экземпляра. Переменные экземпляра доступны в разных методах для любого конкретного экземпляра или объекта. Это означает, что переменные экземпляра изменяются с объекта на объект. Переменные экземпляра предшествуют знаку at (@), за которым следует имя переменной.
  • Переменные класса — переменные класса доступны для разных объектов. Переменная класса принадлежит классу и является характеристикой класса. Им предшествует знак @@, за которым следует имя переменной.
  • Глобальные переменные — переменные класса недоступны в классах. Если вы хотите иметь одну переменную, доступную для всех классов, вам нужно определить глобальную переменную. Глобальным переменным всегда предшествует знак доллара ($).

пример

Используя переменную класса @@ no_of_customers, вы можете определить количество создаваемых объектов. Это позволяет получить количество клиентов.

class Customer
   @@no_of_customers = 0
end

 

Создание объектов в Ruby с использованием нового метода

Объекты — это экземпляры класса. Теперь вы узнаете, как создавать объекты класса в Ruby. Вы можете создавать объекты в Ruby с помощью метода new класса.

Метод new является уникальным типом метода, который предопределен в библиотеке Ruby. Новый метод относится к методам class.

Вот пример создания двух объектов cust1 и cust2 класса Customer:

cust1 = Customer. new
cust2 = Customer. new

 

Здесь cust1 и cust2 являются именами двух объектов. Вы пишете имя объекта, за которым следует знак равенства (=), после которого будет следовать имя класса. Затем будет следовать оператор точки и ключевое слово new.

Пользовательский метод создания объектов Ruby

Вы можете передавать параметры в метод new, и эти параметры могут использоваться для инициализации переменных класса.

Когда вы планируете объявлять метод new с параметрами, вам нужно объявить метод initialize во время создания класса.

Метод initialize — это особый тип метода, который будет выполняться при вызове метода new класса с параметрами.

Вот пример создания метода инициализации:

class Customer
   @@no_of_customers = 0
   def initialize(id, name, addr)
      @cust_id = id
      @cust_name = name
      @cust_addr = addr
   end
end

 

В этом примере вы объявляете метод initialize с id, name и addr как локальные переменные. Здесь def и end используются для определения метода initialize в Ruby. Вы узнаете больше о методах в последующих главах.

В методе initialize вы передаете значения этих локальных переменных переменным экземпляра @cust_id, @cust_name и @cust_addr. Здесь локальные переменные содержат значения, которые передаются вместе с новым методом.

Теперь вы можете создавать объекты следующим образом:

cust1 = Customer.new("1", "Andrey", "Апартаменты Андрея, Краснодар")
cust2 = Customer.new("2", "Max", "Новая дорога Империя, Ростов")

 

Функции членов в классе Ruby

В Ruby функции называются методами. Каждый метод в классе начинается с ключевого слова def, за которым следует имя метода.

Имя метода всегда предпочитается строчными буквами. Вы заканчиваете метод в Ruby, используя ключевое слово end.

Вот пример, чтобы определить метод Ruby:

class Sample
   def function
      statement 1
      statement 2
   end
end

 

Здесь statement 1 и statement 2 являются частью тела метода function внутри класса Sample. Этими статутами может быть любой действительный оператор Ruby. Например, мы можем поместить метод puts для печати Привет Ruby следующим образом:

class Sample
   def hello
      puts "Привет Ruby!"
   end
end

 

Теперь в следующем примере создайте один объект класса Sample и вызовите метод hello и увидите результат:

#!/usr/bin/ruby

class Sample
   def hello
      puts "Привет Ruby!"
   end
end

# Теперь с помощью выше класса для создания объектов
object = Sample. new
object.hello

 

Это приведет к следующему результату:

Привет Ruby!

Простой пример

Вот пример, если вы хотите больше практиковать с классом и объектами.

Пример использования Ruby Class

Если вы нашли ошибку, пожалуйста, выделите фрагмент текста и нажмите Ctrl+Enter.

Если статья понравилась, то поделитесь ей в социальных сетях:

Читайте также

5 1 голос
Рейтинг статьи
Подписаться
Уведомить о
guest

**ссылки nofollow

0 комментариев
Старые
Новые Популярные
Межтекстовые Отзывы
Посмотреть все комментарии

Спасибо!

Теперь редакторы в курсе.