【发布时间】:2019-07-02 06:50:18
【问题描述】:
我正在尝试了解以下两种 java 方法中更好的方法
方法一:
Class C1 {
private final Properties props;
C1(Properties p) {
props = p;
}
public String method1() {
//return some string using props
}
public void method2() {
//do something using props
}
}
方法二:
Class C1 {
//Default Constructor
public String method1(Properties props) {
//return some string using props
}
public void method2(Properties props) {
//do something using props
}
}
我很想知道哪种方法比其他方法更好,以及为什么
- 我打算只实例化这个类一次。
- 我必须多次实例化这个类
【问题讨论】:
-
这取决于具体情况。两种方法的 props 值可以不同吗?
-
这取决于属性是否始终相同 - 第一种方法,否则第二种方法
-
C1 真的是 C1 的依赖项吗? C1 可以没有属性而存在吗?如果不是,那么构造函数是更好的方法注入。
-
这里没有更好的方法,而是根据您的要求和整体设计更适合的不同方法。如果您想提供有用的答案,请指定上下文。
-
这些方法有什么作用?您需要进一步解释,因为这取决于...
标签: java methods parameters class-constructors