- Java 双重比较
- java - 比较器与 Apache BeanComparator
- Objective-C 完成 block 导致额外的方法调用?
- database - RESTful URI 是否应该公开数据库主键?
我想制作一个处理格式化的帮助程序类(即具有删除标点符号和类型之间转换的方法,以及重新格式化名称等)。这似乎不需要任何字段 - 它的唯一目的是让传递的东西转换并返回它们,重新格式化。遗漏构造函数是不好的做法吗?如果是这样,我的构造函数应该做什么?我在看this link并注意到它描述的类缺少构造函数。
最佳答案
Is it bad practice to leave out a constructor?
是的 - 因为除非您指定任何构造函数,否则 Java 编译器将为您提供一个与类本身具有相同可见性的构造函数。
假设你所有的方法都是静态的——除非你想要多态性,否则这似乎是可能的——你应该让你的类final
并给它一个private
构造函数,这样其他开发人员就不会不要不小心创建您的类的一个实例,而那是毫无意义的。在考虑 API 时,只要我可以消除开发人员做一些愚蠢的事情的能力,我就会这样做 :)
所以像这样:
public final class Helpers {
private Helpers() {
}
public static String formatDate(Date date) {
// etc
}
}
请注意,通过将多态性排除在等式之外,您还消除了为测试等更改此行为的可能性。这可能很好 - 我不相信“永远没有静态” - 但它是值得考虑。
关于Java - 没有类构造函数是不好的做法吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15894910/
如果您想分享更多信息,可以在这里找到整个资源 指针: https://github.com/sergiotapia/DreamInCode.Net 基本上,我的API将为其他开发人员提供
关闭。这个问题需要更多focused .它目前不接受答案。 想改进这个问题吗? 更新问题,使其只关注一个问题 editing this post . 关闭 5 年前。 Improve this qu
我不是 SCM 工具的经验丰富的用户,尽管我确信它们的用处,当然。 我在以前的工作中使用了一些不起眼的商业工具,在当前的工作中使用了 Perforce,并在我的小型个人项目中使用了 TortoiseS
所以我想知道一些我应该避免在 javascript 中做的事情以获得良好的 SEO 排名。在我的下一个站点中,我将广泛使用 jquery 和 javascript,但不想牺牲 SEO。那么您认为我应该
基本上,我想知道什么是避免 future CSS 代码出现问题和混淆的最佳方法... 像这样命名 CSS 属性: div#content ul#navigation div.float-left (真
我是一名优秀的程序员,十分优秀!