В моя код трябва да използвам някои постоянни стойности, така че създадох полезен клас
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