这是我关于堆栈溢出的第一个问题;我更感兴趣的是好奇心,因为我已经看到两者都被使用了。

我有一个MapFile类和一个Map类。 MapFile对象可以“变成” 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;
}


谢谢。

最佳答案

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

public class MapFileToMapAdapter {

    private MapFileToMapAdapter() {}

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


在这种情况下,您的代码中将出现松散耦合:Map和MapFile将彼此不认识。

关于java - 对于将对象“转换”为另一个对象的方法,是否有约定? (toX,来自Y),我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/41431435/

10-10 14:00