Bug 27075 ViewerSorter could maybe lazily initialize Collator
calling JavaElementSorter creates a lot of new objects (ViewerSorter calls Collator.getInstance() which is the culprit) so maybe fSorter could be initialized lazily
org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/preferences/MembersOrderPreferencePage.java
private int[] offsets= null;
		public void propertyChange(PropertyChangeEvent event) {
			offsets= null;
		}
		public int getIndex(int kind) {
			if (offsets == null) {
				offsets= new int[LAST_INDEX + 1];
				fillOffsets();
			}
			return offsets[kind];
		}
		private void fillOffsets() {
			String string= JavaPlugin.getDefault().getPreferenceStore().getString(PREF_OUTLINE_SORT_OPTION);
			List entries= getSortOrderList(string);
			if (!isValidEntries(entries)) {
				string= JavaPlugin.getDefault().getPreferenceStore().getDefaultString(PREF_OUTLINE_SORT_OPTION);
				entries= getSortOrderList(string);
			}
			offsets[TYPE_INDEX]= entries.indexOf(TYPES);