Ruby和Python版本的“ self”有什么区别?

Ruby和Python版本的“ self”有什么区别?,第1张

Ruby和Python版本的“ self”有什么区别?

Python被设计为不仅支持面向对象的编程。在方法和函数之间保留相同的接口,可使两种样式更清晰地互 *** 作。

Ruby完全是面向对象的。甚至文字也都是对象(对1.class求值就可以得到Fixnum)。该语言的构建方式使self是一个保留关键字,无论您在哪里,它都会返回当前实例

如果您在某个类的实例方法中,则self是对该实例的引用。

如果您在类本身的定义中(而不是在方法中),则self是类本身:

class C  puts "I am a #{self}"  def instance_method    puts 'instance_method'  end  def self.class_method    puts 'class_method'  endend

在课程定义时间,将打印“我是C”。

直接的“ def”定义了一个实例方法,而“ def self.xxx”则定义了一个类方法。

c=C.newc.instance_method#=> instance_methodC.class_method#=> class_method


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/5663988.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-16
下一篇 2022-12-16

发表评论

登录后才能评论

评论列表(0条)

保存