面试题答案
一键面试方法链与流畅接口原理
在Ruby中,方法链是通过让每个方法返回一个对象(通常是self
)来实现的。流畅接口背后的设计原理是提高代码的可读性和表达性,使代码像自然语言一样流畅。这样可以将多个操作串联起来,对同一个对象依次执行多个相关操作。
示例代码
class MyObject
def initialize
@value = 0
end
def increment
@value += 1
self
end
def double
@value *= 2
self
end
def print_value
puts @value
self
end
end
obj = MyObject.new
obj.increment.double.print_value
在上述代码中,MyObject
类的increment
、double
和print_value
方法都返回self
,从而可以实现方法链。obj.increment.double.print_value
依次对obj
对象执行了自增、翻倍和打印值的操作。