我创建了一个包含墙的高度和宽度的Wall类,我需要在Room类中创建一个包含四个Wall类的列表,我该怎么做呢?我不想使用List,还有别的方法吗?对不起,我是OOP编程的新手。
void main() {
Wall wall = Wall();
print(wall.totalArea);
wall.height = 4;
wall.width = 4;
wall.getAreaTotal();
print(wall.totalArea);
}
class Room {
}
class Wall {
double height;
double width;
late double totalArea;
Wall({
this.height = 1,
this.width = 1,
}) {
getAreaTotal();
}
void getAreaTotal(){
totalArea = height * width;
}
}
2条答案
按热度按时间htrmnn0y1#
这个房间有四面墙。如果我们假设一个长方形的房间,事情可能会变得更复杂。
最常用的方法是不假设四面墙,而只假设房间有一系列墙。
这允许任何墙壁组合,为您的基本L形房间与六面墙,或七边形房间的风格。
在某些情况下,你可以通过假设来使事情变得更容易。就像一个长方形的房间总是有相同的相对的墙壁,并且到处都有相同的高度。
然后您可以:
或者,您可以假设房间以某种方式定向:
这允许您命名各个墙,并为每个墙提供一个class字段。
这么多的选择,哪一个适合你取决于你的用例,你将使用对象做什么。
5fjcxozz2#
就像@Dimon在评论中说的,你可以通过为你想要在房间里的每一面墙添加一个属性来管理它。
大概是这样的
并按如下方式创建您的文件室: