В моем коде я должен использовать некоторые постоянные значения, поэтому я создал служебный класс
public class ConstantUtility {
public final static String category1_name1="category1/name1";
public final static String category1_name2="category1/name2";
public final static String category1_name3="category1/name3";
.
.
.
public final static String category2_name100="category2/name100";
public final static String category2_name101="category2/name101";
.
.
.
}
Но у меня есть около 2000 постоянных значений, я не использую все эти значения в своем приложении, но они должны быть там как выбор. Проблема в том, что когда я использую служебный класс, все переменные являются статическими переменными, и все строковые значения загружаются в jvm.
Константы 2000 года разделены на 6 категорий. Я пытался использовать 6 статических классов, но все равно. Когда jvm находит статический класс, он загружает каждую статическую переменную в память.
По сравнению с памятью строковых констант, которую я действительно использую, память всех тех констант, которую я не использую для загрузки в jvm, намного больше.
Вопрос: Как я могу загрузить в память только одну константу из всех этих констант.
"/category"+i+"/name"+j
. Вы можете вычислить те, которые вам нужны, во время выполнения. - person user207421   schedule 28.06.2016