2017-10-05 44 views
0

嗨我有一个名为的UserData由静态字段的类,主要内容如下:的Android重置类的所有领域

public class UserData { 
private static JSONObject fbProfilePicture; 
private static boolean loggedOut=false; 
private static Integer commonFriendID; 
private static Integer userID1; 
private static Integer UserID2; 
private static JSONObject stolenTrio=null; 
} 

实际上类包含很多更多的领域,但我决定给你看小我班的版本。 在我的应用中,我有一个功能可以删除帐户并创建一个新帐户,当我选择这样做时,我的应用可以回到注册过程,但存在问题,我想清除该类的所有字段删除用户后。 我该怎么做?

+0

为什么所有这些“静态”? –

+0

正如@JoeC所暗示的,您应该使用非静态属性并在每次登录时创建一个UserData实例。这样,你可以简单地创建一个新的UserData实例,并且你将拥有空的属性。 –

+0

@Joe C,因为我不创建UserData的对象,在我的应用程序中,我使用它如下UserData.get/set(),因为我不需要在我的应用程序中超过一个对象 –

回答

0

重置您的数据创建一个重置值的方法。稍后您可能希望在该方法中做更多的事情。通知听众你的对象已被清除。

1

如果你认为你需要一个静态/单身那种UserData实例,我建议做这样的:

public class UserDataSingleton { 
    public static UserData userdata; 
} 

,并与非静态字段使您UserData一个简单的POJO。 这样,您就可以与

UserDataSingleton.userData = new UserData() 
+1

...或提供一种方法“public static void clear(){}”在做这项工作的UserData中... – spi