通过Python生成的随机BoxAdapter适配器类
发布时间:2023-12-11 15:07:31
BoxAdapter是一个适配器类,可以将不同类型的盒子对象适配为相同的接口,以方便进行统一处理。
首先需要导入random模块,以生成随机数。然后定义一个Box类,包含长、宽、高三个属性,并实现一个输出尺寸的方法。
import random
class Box:
def __init__(self, length, width, height):
self.length = length
self.width = width
self.height = height
def get_size(self):
return self.length, self.width, self.height
然后定义BoxAdapter适配器类,它接收一个盒子对象,并将其适配为统一的接口,包含一个输出尺寸的方法。
class BoxAdapter:
def __init__(self, box):
self.box = box
def get_size(self):
return self.box.get_size()
接下来生成一些随机的盒子对象,并通过BoxAdapter进行适配后,输出它们的尺寸。
boxes = []
adapters = []
for _ in range(5):
length = random.randint(1, 10)
width = random.randint(1, 10)
height = random.randint(1, 10)
box = Box(length, width, height)
adapter = BoxAdapter(box)
boxes.append(box)
adapters.append(adapter)
for i in range(len(boxes)):
print(f"盒子{i+1}的尺寸是:", adapters[i].get_size())
运行结果类似于:
盒子1的尺寸是: (5, 7, 3) 盒子2的尺寸是: (2, 4, 10) 盒子3的尺寸是: (1, 10, 8) 盒子4的尺寸是: (8, 10, 6) 盒子5的尺寸是: (4, 6, 4)
通过以上代码,我们生成了5个随机盒子对象,然后将它们适配为统一的接口并输出了它们的尺寸。
适配器模式可以很好地解决不同类之间接口不兼容的问题,通过适配器类可以将不同类型的对象统一为相同的接口,方便进行统一处理。在上述例子中,使用盒子对象的尺寸作为例子,通过BoxAdapter适配器类将不同类型的盒子适配为统一的接口,使得使用者可以方便地获取盒子的尺寸信息。
