Ruby Примеры классов
Ниже мы создадим класс Ruby с именем Customer и объявим два метода:
- display_details: Этот метод используется для отображения подробной информации о клиенте.
- total_no_of_customers: Этот метод используется для отображения общего количества клиентов, созданных в системе.
Примеры
display_detailsМетод содержит три оператора puts, которые выводят идентификатор клиента, имя клиента и адрес клиента. Среди них операторы puts:
выведет текст Customer id и значение переменной @cust_id на одной строке.
Когда вы хотите вывести текст и значение переменной экземпляра на одной строке, вам нужно поставить символ (#) перед именем переменной в операторе puts. Текст и переменная экземпляра с символом (#) должны быть заключены в двойные кавычки.
Второй метод, total_no_of_customers, содержит переменную класса @@no_of_customers. Выражение @@no_of_customers+=1 увеличивает переменную no_of_customers на 1 каждый раз, когда вызывается метод total_no_of_customers. Таким образом, вы получите общее количество клиентов в переменной класса.
Теперь создайте двух клиентов, как показано ниже:
Здесь мы создаём два объекта класса Customer, cust1 и cust2, и передаём необходимые параметры методу new. Когда вызывается метод initialize, необходимые атрибуты объекта инициализируются.
После создания объекта нужно использовать два объекта, чтобы вызвать методы класса. Если вы хотите вызвать метод или любой элемент данных, можно написать код, как показано ниже:
За именем объекта всегда следует точка, а затем имя метода или элемента данных. Мы видели, как вызвать два метода с помощью объекта cust1. Используя объект cust2, вы также можете вызвать два метода, как показано ниже:
Сохраните и выполните код
Теперь поместите весь исходный код в файл main.rb, как показано ниже:
Примеры
Попробуйте »
Затем запустите программу, как показано ниже:
$ ruby main.rb
Это даст следующий результат:
Customer id 1 Customer name John Customer address Wisdom Apartments, Ludhiya Total number of customers: 1 Customer id 2 Customer name Poul Customer address New Empire road, Khandala Total number of customers: 2Другие расширения