java - 如何设计动态java程序

标签 java

我是 Java 新手,所以我正在尝试了解 Java 的一些概念,所以请温柔对待我!

我有我的主控制面板类,其中包含程序的主要部分,并且我实例化了包含房间类实例的建筑类, 房间类包含墙壁类的实例, 墙壁包含 windows 类的实例。

基本上构建建筑物,房间类的每个实例都会有不同数量的墙壁实例,并且墙壁有不同数量的 window 、原始高度和宽度等。

进行此设计的最佳方法是什么?例如创建动态数量的墙壁和 window ,是使用访问器方法的唯一方法吗?只是改变程序主程序中的测量值?或者有一种方法可以将每面墙单独添加到每个房间的数组列表中?如果是的话,放置这些的最佳位置在哪里?

非常感谢您的帮助。

最佳答案

遵循经验法则。

  1. 只要你的问题定义有 has-a,你就得到了组合。如果您要has-many,您可以使用集合——正如您所说,墙壁的List和 window 的List

  2. 您还可以将 Window 作为抽象类,并可以使用 StandardWindowManSizeWindow 的实现——这是一个is-a关系。如 StandardWindow 是一个 Window。您的问题中可能会遇到此类问题,您需要用相同类型的东西装饰房间,但属性不同。

此外,不要使用严格的代码,例如具有三个窗口属性和三个 getter/setter 的类。使用此技术后您可能会后悔。

关于java - 如何设计动态java程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9583085/

相关文章:

java - 如何使用 android facebook sdk 访问用户提要/帖子

java - JTextfield 默认操作后 JButton 变为启用

java - 使用Iterator调用多参数方法

java - BeanUtils.copyProperties 将 Integer null 转换为 0

java - 在 Java 中集成 Python 脚本

java - 在java中将int转换为byte

java - 在java中解析csv文件时出现在单独行中的单词

java - 如何用Java检测打印机是否连接到您的计算机?

java - 字符串到字节的转换-如果已经是字节并将其作为字符串

java - 使用 BufferedReader 类和 Integer.parseInt 计算 txt 文件中堆叠整数的平均值