-

Ruby是一个完美的面向对象编程语言。面向对象编程语言的特点包括 -

这些特性已经在面向对象Ruby的一章中探讨过了

面向对象的程序涉及类和对象。类是创建单个对象的蓝图。在面向对象的术语中,我们说你的自行车被称为自行车的物体的一个实例

以任何车辆为例。它包括轮子,马力,燃料或燃气罐容量。这些特征形成了车辆类的数据成员。借助这些特点,您可以区分一辆车与另一辆。

车辆还可以具有某些功能,例如停止,驾驶和加速。即使这些功能也构成了Vehicle类的数据成员。因此,您可以将类定义为特征和功能的组合。

一类车可以定义为 -

Class Vehicle {

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

通过为这些数据成员分配不同的值,您可以形成类Vehicle的几个实例。例如,一架飞机有三个轮子,马力为1,000,燃料为坦克类型,容量为100升。同样的方式,一辆汽车有四个轮子,二十马力,燃气作为坦克的类型,容量为25升。

定义Ruby中的类

要通过使用Ruby实现面向对象的编程,您需要首先学习如何在Ruby中创建对象和类。

Ruby中的类始终以关键字类和类的名称开头。这个名字应该始终是在首都的首都。课程客户可以显示为 -

class Customer
end

您可以使用关键字结束终止类中的所有数据成员都在类定义和结束关键字之间。

Ruby类中的变量

Ruby提供了四种类型的变量 -

使用类变量@@ no_of_customers,可以确定正在创建的对象数。这样可以获得客户数量。

class Customer
   @@no_of_customers = 0
end

使用新方法在Ruby中创建对象

对象是类的实例。现在您将学习如何在Ruby中创建类的对象。您可以通过使用的类的方法在Ruby中创建对象

方法new是一种独特的方法,它是在Ruby库中预定义的。新方法属于方法。

以下是创建Customer类的两个对象cust1和cust2的示例:

cust1 = Customer. new
cust2 = Customer. new

在这里,cust1和cust2是两个对象的名称。您写的对象名称后跟等号(=),之后类名将跟随。然后,点运算符和关键字new将跟随。

自定义方法来创建Ruby对象

您可以将参数传递给方法new,这些参数可用于初始化类变量。

当您计划使用参数声明方法时,需要在创建类时声明方法initialize

初始化方法是一种特殊类型的方法中,当将要执行的新的类的方法被调用的参数。

以下是创建initialize方法的示例 -

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

在这个例子中,你使用id,nameaddr声明initialize方法作为局部变量。这里,defend用于定义Ruby方法初始化您将在后续章节中更多地了解方法。

初始化方法中,将这些局部变量的值传递给实例变量@cust_id,@cust_name和@cust_addr。这里局部变量包含与新方法一起传递的值。

现在,您可以创建如下对象 -

cust1 = Customer.new("1", "John", "Wisdom Apartments, Ludhiya")
cust2 = Customer.new("2", "Poul", "New Empire road, Khandala")

Ruby类中的成员函数

在Ruby中,函数称为方法。中的每个方法都以关键字def开头,后跟方法名称。

方法名称始终以小写字母表示您可以使用关键字end在Ruby中结束一个方法

以下是定义Ruby方法的示例 -

class Sample
   def function
      statement 1
      statement 2
   end
end

这里,语句1语句2类Sample内部方法函数的一部分这些数据可以是任何有效的Ruby语句。例如,我们可以把方法放在打印你好红宝石如下-

class Sample
   def hello
      puts "Hello Ruby!"
   end
end

现在在下面的例子中,创建一个Sample类的对象并调用hello方法并查看结果 -

#!/usr/bin/ruby

class Sample
   def hello
      puts "Hello Ruby!"
   end
end

# Now using above class to create objects
object = Sample. new
object.hello

输出结果如下 -

Hello Ruby!

简单案例研究

这是一个案例研究,如果你想做更多的练习与类和对象。

Ruby类案例研究