Ruby 全局变量,实例变量,类变量
2015-03-31 14:12
337 查看
class Computer
$manufacturer = "Mango Computer, Inc." # “$" 是全局变量关键字
@@num_of_instances = 0 # ”@@“是类变量的关键字,类变量可以作用于所有的实例对象,可以用来计算实例变量的数目
def initialize(username, password) #username 为本地变量
@username = username # "@" 关键字表示实例变量
@password = password
@@num_of_instances += 1
end
def current_user
@username
end
def self.display_total_instance #类方法
@@num_of_instances
end
end
# Make a new Computer instance:
hal = Computer.new("Dave", 12345)
col = Computer.new("Hen", 23435)
puts "Current user: #{hal.current_user}"
puts "Manufacturer: #{$manufacturer}"
puts "Instances: #{Computer.display_total_instance}"
============》
注:全局变量还有一种创建方式,即在所有的类和方法外面创建。但是全局变量在哪都可以直接访问,不安全,所以尽量少使用。
其它变量需要通过方法来访问。
$manufacturer = "Mango Computer, Inc." # “$" 是全局变量关键字
@@num_of_instances = 0 # ”@@“是类变量的关键字,类变量可以作用于所有的实例对象,可以用来计算实例变量的数目
def initialize(username, password) #username 为本地变量
@username = username # "@" 关键字表示实例变量
@password = password
@@num_of_instances += 1
end
def current_user
@username
end
def self.display_total_instance #类方法
@@num_of_instances
end
end
# Make a new Computer instance:
hal = Computer.new("Dave", 12345)
col = Computer.new("Hen", 23435)
puts "Current user: #{hal.current_user}"
puts "Manufacturer: #{$manufacturer}"
puts "Instances: #{Computer.display_total_instance}"
============》
Current user: Dave Manufacturer: Mango Computer, Inc. Instances: 2
注:全局变量还有一种创建方式,即在所有的类和方法外面创建。但是全局变量在哪都可以直接访问,不安全,所以尽量少使用。
其它变量需要通过方法来访问。
相关文章推荐
- Ruby中全局变量,实例变量,局部变量,类变量,Symbol对比
- Ruby中全局变量,实例变量,局部变量,类变量,Symbol对比
- Ruby中全局变量,实例变量,类变量,Symbol
- ruby学习笔记之【全局变量和顶级实例变量】
- 通过调用类变量,实现全局变量共享(类变量和实例变量)
- ruby中实例变量、类变量等等的区别和联系
- ruby 类,全局变量和 类变量
- 类变量、成员变量、实例变量、局部变量、静态变量、全局变量的定义与区别
- 局部变量,全局变量,成员变量,实例变量,类变量的区别
- ruby中的实例变量和类变量
- ruby中的实例变量和类变量
- 成员变量、全局变量、实例变量、类变量、静态变量和局部变量的区别
- Ruby 实例变量和类变量
- 牛客网Java刷题知识点之全局变量(又称成员变量,分为类变量和实例变量)、局部变量、静态变量(又称为类变量)
- 类变量、成员变量、实例变量、局部变量、静态变量、全局变量 的解释。
- 类变量、成员变量、实例变量、局部变量、静态变量、全局变量 的区别
- ruby实例变量与类变量
- C++builder 多线程下载实际操作记录,最简单实例(共同访问全局变量+临界值)
- struts全局变量的使用和实例
- Ruby 实例变量