繁体   English   中英

Java-常量类设计

[英]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.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM