Android奇怪的对象行为

Android奇怪的对象行为,android,oop,Android,Oop,我创建了一个FacebookUser对象: private String id,name, status; private double distance = -1, longitude, latitude; private transient Drawable profilePicture,gender; private boolean isFacebookFriend = false, isApplicationFriend = false, isC

我创建了一个FacebookUser对象:

    private String  id,name, status;    
    private double distance = -1, longitude, latitude;
    private transient Drawable profilePicture,gender;
    private boolean isFacebookFriend = false, isApplicationFriend = false, isClicked = false, isOnline = false, isLoaderChecked=false;


    public FacebookUser()
    {

    }

    public FacebookUser(String id, String name) {
        this.setId(id);
        this.setName(name);     
    }

    public String getId() {
        return id;
    }

    public void setId(String id) {
        this.id = id;
    }

    public String getName() {
        if (isApplicationFriend())
            return name;
        else
            return "";
    }

    public void setName(String name) {
        this.name = name;
    }

    public boolean isApplicationFriend() {
        return isApplicationFriend;
    }

    public void setApplicationFriend(boolean isApplicationFriend) {
        this.isApplicationFriend = isApplicationFriend;
    }   
}
我的问题是getName()方法

在ListView中显示FacebookUser的ArrayList时,我使用FacebookUser.getName()在TextView中显示名称

现在,我100%确信isApplicationFriend()返回true——我甚至在TextView文本插入附近记录了它


那么为什么getName()总是返回“”?

你是对的你是对的。。。我太傻了

之前调用了该方法并清空了name属性


抱歉…

如果
isApplicationFriend()
为true,则很可能
name
没有分配给它的值如果isApplicationFriends()为true,且name没有值,则它将变为null。。。因此,您的IsApplication Friends()可能会变为false。。。你试过登录吗?我是唯一一个觉得“Drawable profilePicture,gender”很有趣的人吗?正如我所写的-我试过登录,它是真的…试着调试它,因为你认为应该返回名称(因此applicationFriend是真的)。如果您在Eclipse中,只需添加一个断点,并将其作为Android应用程序在模拟器或真实设备上进行调试。这会很快告诉你出了什么问题。