2014-09-30 66 views
0

我的问题很简单!我见过几个将数据库名称(或表名)定义为静态变量的应用程序! 为什么?为什么数据库名称必须是静态的?

喜欢:

private static final String DATABASE_NAME = "database" ; 

我可以把它定义为最终的变数?

+0

http://docs.oracle.com/javase/tutorial/java/javaOO/classvars.html – Luksprog 2014-09-30 18:29:33

回答

2

可能这种方式,你想说你的DATABASE_NAME不是你班上每个实例的一部分,而是班级本身的一部分。这意味着每次你声明你的类的一个实例时,这些类中的每一个都不会拥有该属性的副本,但他们将共享这个属性代替。

相当逻辑,这意味着是一个静态字段,所以为什么要做一个实例呢?是的,它应该是一个final变量,因为它不同于它在执行时会改变。

2

为了方便。在应用程序运行时或同一类的实例之间,数据库名称不会更改 - 它只能在应用程序版本之间更改。这样,如果更改数据库的名称,则不必在整个应用程序中搜索它 - 只需修改DATABASE_NAME变量即可。

相关问题