推荐答案
在 Ruby 中,实例变量和实例方法的定义如下:
实例变量
实例变量以 @ 开头,通常在类的 initialize 方法中定义。例如:
class Person
def initialize(name)
@name = name
end
end实例方法
实例方法在类中定义,使用 def 关键字。例如:
// www.javascriptcn.com code example
class Person
def initialize(name)
@name = name
end
def greet
puts "Hello, #{@name}!"
end
end本题详细解读
实例变量
实例变量是类的每个实例所独有的变量。它们以 @ 开头,通常用于存储对象的状态。实例变量在类的任何实例方法中都可以访问。
- 定义位置:通常在
initialize方法中定义,因为initialize是创建对象时自动调用的方法。 - 访问权限:实例变量默认是私有的,不能直接从类外部访问。可以通过定义
attr_accessor、attr_reader或attr_writer来提供访问权限。
实例方法
实例方法是类的实例可以调用的方法。它们用于定义对象的行为。
- 定义方式:使用
def关键字在类中定义。 - 调用方式:通过类的实例对象调用。例如:
person = Person.new("Alice")
person.greet # 输出: Hello, Alice!示例代码
// www.javascriptcn.com code example
class Person
attr_accessor :name
def initialize(name)
@name = name
end
def greet
puts "Hello, #{@name}!"
end
end
person = Person.new("Bob")
person.greet # 输出: Hello, Bob!
person.name = "Charlie"
person.greet # 输出: Hello, Charlie!在这个示例中,@name 是一个实例变量,greet 是一个实例方法。通过 attr_accessor :name,我们为 @name 提供了读取和写入的权限。