Java:从调用方法的类中查询方法

时间:2013-07-05 04:10:41

标签: java object reference

我有两节课, 地图和地点

地图类:

public Class Map{

private Place startplace;

public void SetStartPLace(Place p){

this.startplace=p;
}

public PLace getStartPlace(){
return this.startplace;
}
}

放置课程:

public class Place{

private String placename;

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

public String getName(){
return this.placename;
}

public boolean isStartPlace(){

}

}

Map有方法设置(setStartPLace(Place p))和get(放置getStartPLace())起始位置(Place类型对象) 所以我在Map类中为起始位置保留了一个“Place”类型的变量。并根据需要设置并返回。

但是在给定的规范中,Place类中还有一个名为isStartPlace()的方法。 如果该地点是Map对象中的Start位置,则应该返回true。

如何混淆我应该如何调用Map类来获取此信息并与调用它的place对象进行比较。

Place对象有一个名为“name”的字符串proerty,我可以用来比较这两个对象,我只是不知道如何将当前位置对象引用到Map类'getStartPlace()方法返回的Place对象。 / p>

1 个答案:

答案 0 :(得分:1)

目前,地图知道起始位置,但该地方对包含它的地图一无所知。因此,如果你真的必须实现isStartPlace()之类的方法,你还必须设置从地方到地图的关系:

public class Place { 
    private Map containingMap;
    ...

    public boolean isSTartPlace() {
        return this.equals(containingMap.getStartPlace());
    }
}

public class Map{

    public void setStartPlace(Place p) {
        this.startPlace = p;
        p.setContainingMap(this);
    }
    ...
}