Ruby:我应该如何访问类中的实例变量?

Ruby:我应该如何访问类中的实例变量?,第1张

概述在 ruby中,您可以通过@var_name或私有getter attr_reader:var_name直接在内部访问变量. 哪种解决方案更多(语义上?)正确?使用溶液1或溶液2的任何优点/缺点? 解决方案1: class Point def initialize(x, y) @x = x @y = y end def distance Math.sqrt(@x ** 2 在 ruby中,您可以通过@var_name或私有getter attr_reader:var_name直接在内部访问变量.

哪种解决方案更多(语义上?)正确?使用溶液1或溶液2的任何优点/缺点?

解决方案1:

class Point def initialize(x,y)   @x = x   @y = y end def distance   Math.sqrt(@x ** 2 + @y ** 2) endend

解决方案2:

class Point  def initialize(x,y)   @x = x   @y = y  end  def distance    Math.sqrt(x ** 2 + y ** 2)  endprivate   attr_reader :x,:yend
解决方法 我会使用第二个选项:

class Point  def initialize(x,:yend

有两个原因:

> attr_reader可能是faster(正如Filip bartuzi已经指出的那样)>使用attr_reader可以通过使用自定义getter方法替换attr_reader来更轻松地重构该类.

@H_403_42@ 总结

以上是内存溢出为你收集整理的Ruby:我应该如何访问类中的实例变量?全部内容,希望文章能够帮你解决Ruby:我应该如何访问类中的实例变量?所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

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

原文地址: http://outofmemory.cn/langs/1277089.html

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

发表评论

登录后才能评论

评论列表(0条)

保存