I have static DefaultSharedPreference variable defined as like here:
public class Itu extends Application {
    public static SharedPreferences sharedPreferencesFDefault;
    @Override
    public void onCreate() {
        sharedPreferencesFDefault = PreferenceManager.getDefaultSharedPreferences(this); 
    }
    public static SharedPreferences getSharedPreferencesItu(){
        return sharedPreferencesFDefault;
    }
}
(1. way) When i access it directly from some Activity, it clears sharedPreference:
((Itu) getApplication()).sharedPreferencesFDefault.edit().clear().commit();
(2. way) But when i access  it through Getter method and try to clear() it, it does NOT work:
public static SharedPreferences sharedPreferencesFDefault;
sharedPreferencesFDefault = ((Itu) getApplication()).getSharedPreferencesItu();
sharedPreferencesFDefault.edit().clear().commit();
Old question: What is the difference between 1.way and 2.way?
UPDATE: I changed public static SharedPreferences sharedPreferencesFDefault to public SharedPreferences sharedPreferencesFDefault and both ways worked. 
New question: What happens when i initialize static variable with another static variable indeed?
