【发布时间】:2014-05-14 07:44:23
【问题描述】:
我讨论了静态方法的用法,简单来说,参数是在下面的场景中,类定义应该有一个静态方法还是实例方法。有一个定义实体的类,即它的属性是什么以及允许对其进行哪些操作。
class dummy{
String name;
String content;
String someRandomOpeation(){
....
}
static String createKey( String inputName, String inputContent ){
return inputName+inputContent;
}
}
类定义还有一个静态方法,它接受一些参数(比如内容和日期,它在逻辑上定义了一个实例)并使用它来构造一个键(一个字符串)并返回相同的值。现在,如果创建消息的实例,它将具有内容和日期作为字段。参数是我可以获得一个给定名称和内容的键,而不必创建一个有效的实例来拥有静态方法。还是一对名称和内容在逻辑上定义了一个实例这一事实是否表明要创建一个实例并从中获取一个密钥?
【问题讨论】:
-
dogbane - 感谢您的回复,但这里的情况略有不同,其中静态方法是公共的,并且 args 可以在逻辑上定义一个实例。
-
基于 cmets,问题似乎是针对
static String createKey(String, String)或static String createKey(Dummy)的方法 -String createKey()(实例方法)是第三个选项。
标签: java oop static-methods design-principles instance-methods