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
setPreferenceStore(JavaPlugin.getDefault().getPreferenceStore());
		String string= getPreferenceStore().getString(PREF_OUTLINE_SORT_OPTION);
		String upLabel= JavaUIMessages.getString("MembersOrderPreferencePage.button.up"); 
		String downLabel= JavaUIMessages.getString("MembersOrderPreferencePage.button.down"); 
		String[] buttonlabels= new String[] { upLabel, downLabel };
		fSortOrderList= new ListDialogField(new MemberSortAdapter(), buttonlabels, new MemberSortLabelProvider());
		fSortOrderList.setDownButtonIndex(1);
		fSortOrderList.setUpButtonIndex(0);
		
		List entries= getSortOrderList(string);
		if (!isValidEntries(entries)) {
			string= JavaPlugin.getDefault().getPreferenceStore().getDefaultString(PREF_OUTLINE_SORT_OPTION);
			entries= getSortOrderList(string);
		}
		fSortOrderList.setElements(entries);
	}
	/*
	 * @see PreferencePage#createControl(Composite)
	 */
	public void createControl(Composite parent) {
		super.createControl(parent);
		WorkbenchHelp.setHelp(getControl(), IJavaHelpContextIds.SORT_ORDER_PREFERENCE_PAGE);
	}
	/**
	 * @see org.eclipse.jface.preference.PreferencePage#createContents(Composite)
	 */
	protected Control createContents(Composite parent) {
		Composite composite= new Composite(parent, SWT.NONE);
		GridLayout layout= new GridLayout();