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
if (element instanceof String) {
				String s= (String) element;
				if (s.equals(FIELDS)) {
					return JavaUIMessages.getString("MembersOrderPreferencePage.fields.label"); 
				} else if (s.equals(CONSTRUCTORS)) {
					return JavaUIMessages.getString("MembersOrderPreferencePage.constructors.label"); 
				} else if (s.equals(METHODS)) {
					return JavaUIMessages.getString("MembersOrderPreferencePage.methods.label"); 
				} else if (s.equals(STATIC_FIELDS)) {
					return JavaUIMessages.getString("MembersOrderPreferencePage.staticfields.label"); 
				} else if (s.equals(STATIC_METHODS)) {
					return JavaUIMessages.getString("MembersOrderPreferencePage.staticmethods.label"); 
				} else if (s.equals(INIT)) {
					return JavaUIMessages.getString("MembersOrderPreferencePage.initialisers.label"); 
				} else if (s.equals(STATIC_INIT)) {
					return JavaUIMessages.getString("MembersOrderPreferencePage.staticinitialisers.label"); 
				} else if (s.equals(TYPES)) {
					return JavaUIMessages.getString("MembersOrderPreferencePage.types.label"); 
				}
			}
			return ""; 
		}
		/**
		 * Not implemented
		 * @see org.eclipse.jface.viewers.IBaseLabelProvider#addListener(ILabelProviderListener)
		 */
		public void addListener(ILabelProviderListener listener) {
		}
		/**
		 * Not implemented