[英]Java - Constants class design
我是Android和Java编程的新手,但是从事.NET编程已有多年了。 我们最近开发了一个android应用,现在已经为客户准备了最后阶段(而不是通过market / google play)。 无论如何,同时清理代码。 我注意到我们使用了大量的字符串,如果可能的话,我希望减少使用。 我阅读了几篇文章,并建议最终用户可以看到的任何内容,都将其放在strings.xml中(为了更好地进行本地化,不太清楚其含义是什么),但我们也使用SQLite表名,列名等,我想知道构造一个类(或一组类)的最佳方法,该类使我们(我和我的开发人员)可以轻松访问它们。
这就是我开始构建它的方式,但是希望对是否有更好的方法(设计,性能问题等)提出一些意见。
public class Constants {
static enum SQLiteTableNames { Issues, Activities }
static class SQLiteTables {
static class Issues {
static class ColumnNames {
static String ID = "_id";
static String DateReceived = "DateReceived";
}
}
static class IssueActivites {
static class ColumnNames {
static String ID = "_id";
static String IssueID = "IssueID";
static String ActivityDate = "ActivityDate";
static String ActivityType = "ActivityType";
static String FullName = "FullName";
static String Notes = "Notes";
}
}
}
}
这使我们可以像这样引用列名:
Constants.SQLiteTables.IssueActivites.ColumnNames.ActivityDate;
我应该在属性上使用最终静态变量,而不是仅使用静态变量吗?
常数应该是static final
。 这确实具有性能上的好处,因为它允许将值编译进来。它也是很好的样式。
顺便说一句,约定是将常量名称放在ALL_CAPS
。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.