6.11. Ruby classes and objects

发布时间 : 2025-10-25 13:34:04 UTC      

Page Views: 9 views

Ruby is a perfect object-oriented programming language. Features of an object-oriented programming language include:

  • Data encapsulation

  • Data abstraction

  • Polymorphisms

  • Inherit

These features will be discussed in object-oriented Ruby.

An object-oriented program that involves classes and objects. A class is a blueprint created by individual objects. In object-oriented terms, your bike is an instance of the bicycle class.

Take a vehicle as an example, it includes wheels, horsepower (horsepower), fuel or fuel or gas tank capacity. These properties form the data members of the vehicle class. With these attributes, you can distinguish one vehicle from another.

Vehicles can also contain specific functions, such as halting, driving, and speeding. These functions form the data members of the vehicle class. Therefore, you can define a class as a combination of properties and functions.

The class Vehicle is defined as follows:

6.11.1. Example #

ClassVehicle{Numberno_of_wheelsNumberhorsepowerCharacterstype_of_tankNumberCapacityFunctionspeeding{ }Functiondriving{ }Functionhalting{ } } 

By assigning different values to these data members, you can create classes Vehicle different examples of. For example, an airplane has threewheels, horsepower 1,000 the capacity of the fuel tank is 100 L. In the same way, a car has four wheels, horsepower 200 the capacity of the gas tank is 25 L.

Define classes in Ruby #

In order to use Ruby for object-oriented programming, you need to first learn how to create objects and classes in Ruby.

In Ruby, classes always use keywords class start, followed by the name of the class. The first letter of the class name should be capitalized. Class Customer as follows:

classCustomerend 

You can use keywords end terminates a class. All data members in a class are between the class definition and the end between keywords.

Variables in the Ruby class #

Ruby provides four types of variables:

  • Local variables: local variables are variables defined in the method. Local variables are not available outside the method. You will see more details about the approach in subsequent chapters. Local variables are in lowercase letters or _ start.

  • Instance variables: instance variables can be used across methods in any particular instance or object. This means that instance variables can be changed from object to object. The instance variable places the symbol before the variable name @ ).

  • Class variables: class variables can be used across different objects. The class variable belongs to the class and is an attribute of the class. Class variables place symbols before the variable name ( @@ ).

  • Global variables: class variables cannot be used across classes. If you want to have a variable that can be used across classes, you need to define global variables. Global variables are always marked with the dollar sign $ ) begin.

6.11.2. Example #

Use class variables @@no_of_customers can determine the number of objects being created, which determines the number of customers

6.11.3. Example #

classCustomer@@no_of_customers=0end 

Use in Ruby new Method to create an object #

Object is an instance of a class. Now you will learn how to create objects of a class in Ruby. In Ruby, you can use the methods of a class new create an object.

Method new is a unique approach that is predefined in the Ruby library.``new`` method belongs to a class method.

The following example creates a class Customer two objects of cust1 and cust2 :

cust1=Customer.newcust2=Customer.new 

Here, cust1 And cust2 is the name of two objects. The object name is followed by the equal sign (=), followed by the class name, followed by the dot operator and keyword new .

Custom methods to create Ruby objects #

You can give the method new pass parameters that can be used to initialize class variables.

When you want to declare a new method, you need to declare the method while creating the class initialize .

initialize method is a special type of method that will call the new method is executed.

The following example creates a initialize methods:

Example #

classCustomer@@no_of_customers=0definitialize(id,name,addr)@cust_id=id@cust_name=name@cust_addr=addrendend 

In this example, you can declare that you have id name addr as a local variable initialize Method. Here, def and end used to define Ruby methods initialize . In later chapters, youwill learn more about the method.

In initialize method, pass the values of these local variables to the instance variables @cust_id @cust_name and @cust_addr . In this case, the value of the local variable is with the new method to pass on.

You can now create an object, as follows:

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

Member functions in the Ruby class #

In Ruby, functions are called methods. Each method in the class is defined by a keyword def start, followed by the method name.

Method names always start with a lowercase letter. In Ruby, you can use keywords end to end a method.

The following example defines a Ruby method:

classSampledeffunctionstatement1statement2endend 

Here, statement 1 and statement 2 are methods within the class Sample function . The main body of the component. These statements can beany valid Ruby statement. For example, we can use the method puts to output Hello Ruby , as follows:

classSampledefhelloputs"Hello Ruby!"endend 

The following example creates a class Sample and call the hello methods:

#!/usr/bin/rubyclassSampledefhelloputs"Hello Ruby!"endend#Use the above class to create objectsobject=Sample.newobject.hello 

This will produce the following results:

Hello Ruby! 
《地理信息系统原理、技术与方法》  97

最近几年来,地理信息系统无论是在理论上还是应用上都处在一个飞速发展的阶段。 GIS被应用于多个领域的建模和决策支持,如城市管理、区划、环境整治等等,地理信息成为信息时代重要的组成部分之一; “数字地球”概念的提出,更进一步推动了作为其技术支撑的GIS的发展。 与此同时,一些学者致力于相关的理论研究,如空间感知、空间数据误差、空间关系的形式化等等。 这恰好说明了地理信息系统作为应用技术和学科的两个方面,并且这两个方面构成了相互促进的发展过程。