我正在尝试运行一个简单的程序:
class Pras
def samleMethod
a = 12
p "a"
end
end
没有错误,但为什么输出没有显示?
class Pras
def samleMethod
a = 12
p a
end
end
答案 0 :(得分:1)
您正在打印字符串'a'而不是变量。请改用:p a
编辑:
正如Rostyslav所说,你没有执行任何事情:试试Pras.new.samleMethod
答案 1 :(得分:1)
完美适合我:
这里我们定义class:
irb(main):014:0> class Pras
irb(main):015:1> def samleMethod
irb(main):016:2> a = 12
irb(main):017:2> p a
irb(main):018:2> end
irb(main):019:1> end
=> nil
以下是如何创建该类的实例对象以及实际执行打印调用实例方法:
irb(main):020:0> Pras.new.samleMethod
12
=> 12
答案 2 :(得分:1)
class Pras
def samleMethod
a = 12
p a
end
end
在此,您将使用名为sampleMethod的公共方法创建名为Pras的类。
我假设您对OOP有一些了解
因此,当您访问某个方法时,您需要创建一个类实例来访问它。
p = Pras.new
现在您可以使用实例
访问该方法p.sampleMethod
或两者在一行
Pras.new.sampleMethod
我建议你仔细看看这个。 http://www.tutorialspoint.com/ruby/ruby_quick_guide.htm
除非调用它们,否则不会执行方法。
在线试用此代码here