LocationFinder.getFinder のパラメータ リスト内のコードの動作、つまりクラス new LocationFinder.Listener() を理解できませんでした。
それが何であるかを私に理解させてください。
private LocationFinder locationFinder;
private ViewMaster viewMaster;
private synchronized void initLocationFinder() {
if (locationFinder == null) {
**locationFinder =LocationFinder.getFinder(new LocationFinder.Listener()
{
public void newLocation(double lat, double lon, int accuracy) {
DataModel.getInstance().setCurrentPosition(new GeoCoordinate(lat, lon, 0), accuracy);
refreshCurrentPositionOnMap();
if (viewMaster != null) {
viewMaster.draw();
}
}
});**
}
}
LocationFinder は抽象クラスです
public static LocationFinder getFinder(Listener listener)
{
// returns finder which is reference of LocationFinder class
}
リスナーはインターフェースです
public interface Listener {
void newLocation(double lat, double lon, int accuracy);
}
まだViewMasterはGameCanvasを拡張する最終クラスです
public final class ViewMaster extends GameCanvas {
private volatile boolean refreshScreen = false;
public final void draw() {
refreshScreen = true;
}
ここで、揮発性ブール値とはどういう意味ですか??