【发布时间】:2014-01-31 13:23:05
【问题描述】:
我有一个快速而简单的问题。我习惯于让每一堂课都成为“最终”,当然,除非它需要被另一堂课扩展。
这是一个坏习惯吗?好习惯?这还重要吗? 我了解修饰符对类的影响。
提前非常感谢!
编辑: 这是一个示例代码。该类不会被任何其他类扩展。
public final class Application {
/**
* Starts the application.
*
* @param arguments arguments provided from command-line
*/
public static void main(String[] arguments) {
LaunchUtilities util = new LaunchUtilities(new EventHandler());
try {
util.addListener(43594);
} catch (IOException ioe) {
Logger.getLogger(Application.class.getName()).log(Level.SEVERE, "Could not bind a port to a listener!", ioe);
}
util.start();
}
}
【问题讨论】:
-
这取决于谁将使用您的课程。
-
有谁知道各种用于单元测试的模拟库是否荣誉“最终”?
-
@Paulo 我正在为游戏编写服务器,我不打算向公众发布代码,所以我是唯一使用代码的人。
-
如果您尝试扩展
final类而没有意识到您正在扩展它,这可能会很糟糕。 -
@fireshadow52 我没有将“final”修饰符放在我知道需要扩展的类上。