【发布时间】:2017-03-08 22:56:22
【问题描述】:
在我的 Java Web 服务器项目中,我的 Main.main 方法接受一个参数,指定它将在其中查找某些文件的目录,我稍后会使用这些文件。我的问题是,在我的高级课程中,我实际上并没有对这个论点做任何事情,但是我的一些低级课程需要这些信息。
自然,解析和存储我的命令行参数的类是第一个使用的类之一,即我的最高级别的类之一,所以我正在努力寻找一种方法来使命令行参数可以访问我的低级课程。
似乎我唯一的两个选择是要么一直向下传递它,要么通过从不触及参数的类,而不是将它传递到下一个级别,或者给它一个全局范围。从设计的角度来看,这些似乎都不是很好的选择,所以我想知道是否有我遗漏的替代方案,或者我是否只需要选择两个弊端中较小的一个——或者完全改变我的课程结构方式.
【问题讨论】:
-
你的直觉是正确的,传递它或全局状态都不是很好的选择,但你接受了一个只建议这些的答案。
标签: java oop solid-principles