想象一下,我有一个对象" House"。在" House"我想要一个对象" Door"和一个对象" Window"用不同的方法,让我们说打开和关闭门/窗。 我的主要目标是使代码看起来像这样:
my_house = House.new
neighbor_house = House.new
my_house.Door.open
neighbor_house.Window.close
neighbor_house.Door.open
neighbor_house.Door.close
my_house.Door.close
答案 0 :(得分:1)
虽然我不明白,为什么你决定在这里提出这个问题,而不是阅读Ruby语言的一些介绍,答案如下:
class Door
def open; end
def close; end
end
class Window
def open; end
def close; end
end
class House
attr_reader :door, :window
def initialize door, window
@door, @window = door, window
end
end
house = House.new Door.new, Window.new
house.door.open
house.window.close