加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > Java > 正文

java属性 – 要公开还是不公开?

发布时间:2020-12-15 01:12:10 所属栏目:Java 来源:网络整理
导读:这可能是一个古老的问题,我相信每个人都有自己的方式. 假设我定义了一些属性,例如 secret.user.id=usersecret.password=passwordwebsite.url=https://stackoverflow.com 假设我有100个不同的类和位置,我需要使用这些属性. 哪一个好 (1)我创建了一个Util类,它

这可能是一个古老的问题,我相信每个人都有自己的方式.
假设我定义了一些属性,例如

secret.user.id=user
secret.password=password
website.url=https://stackoverflow.com

假设我有100个不同的类和位置,我需要使用这些属性.
哪一个好
(1)我创建了一个Util类,它将加载所有属性并使用键常量为它们提供服务
如 :
Util是一个单例,可以加载所有属性并保持getInstance()调用.

Util myUtil = Util.getInstance();
String user = myUtil.getConfigByKey(Constants.SECRET_USER_ID);
String password = myUtil.getConfigByKey(Constants.SECRET_PASSWORD);
..
//getConfigByKey() - inturns invokes properties.get(..)
doSomething(user,password)

所以,无论我需要这些属性,我都可以采取以上措施.

(2)我创建了一个有意义的类来表示这些属性;说,
ApplicationConfig并提供getter以获取特定属性.
所以上面的代码可能如下所示:

ApplicationConfig config = ApplicationConfig.getInstance();
doSomething(config.getSecretUserId(),config.getPassword());
//ApplicationConfig would have instance variables that are initialized during
// getInstance() after loading from properties file.

注意:这样的属性文件将来只会有一些细微的变化.

我个人的选择是(2) – 让我听一些评论?

最佳答案
我发现第一种方法比必要的更冗长. (特别是如果预期属性不会发生很大变化.)此外,通过使用第二种方法,您可以在加载属性时处理转换/类型问题,而不是在使用它们时.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读