是否有方法 'converting' 将一个对象转换为另一个对象的约定? (到 X,从 Y)

Is there any convention for methods 'converting' an object into another? (toX, fromY)

这是我在 Stack Overflow 上的第一个问题;我更感兴趣的是好奇心,因为我已经看到两者都被使用了。

我有一个 MapFile class 和一个 Map class。 MapFile 对象可以 'turned into' Map 对象。其中哪一种是首选方式?有没有?

在MapFile.java

public Map toMap(){
    Map map;
    // code to make a map
    return map;
}

在Map.java

public static Map fromMapFile(MapFile f){
    Map map;
    //code to make a map
    return map;
}

谢谢。

首选方法是创建第三个实用程序 class MapFileToMapAdapter 并使用它:

public class MapFileToMapAdapter {

    private MapFileToMapAdapter() {}

    public static Map toMap(MapFile mapFile) {
        Map map;
        // propagate map
        return map;
    }
}

在这种情况下,您的代码中将出现松散耦合:Map 和 MapFile 不会相互识别。