Ruby中的 class method, instance method, singleton method/class

singleton method/class 从效果来说,两者没有什么区别

# class method
10.times{ |i| print("=")}
puts("class/instance method")
class MyClass   
   def MyClass.classMethod 
      puts( "This is a class method" ) 
   end 

   def self.classMethod3 
      puts( "This is a class method3" ) 
   end 

   def instaceMethod
      puts("instance method")
   end
end

def MyClass.classMethod2
  puts( "This is a class method2" ) 
end 

MyClass.classMethod
MyClass.classMethod2
MyClass.classMethod3
#MyClass.instaceMethod # undefined method

# singleton method
10.times{ |i| print("=")}
puts("singleton method")
aaa = MyClass.new
def aaa.test
  puts "singleton method"
end

class << aaa 
   def test2 
      puts( "singleton class method" ) 
   end 
end

aaa.test
aaa.test2
aaa.instaceMethod
# aaa.classMethod # undefined method
aaa.class.classMethod
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值