Java 将两种数据类型合并为新数据类型(路径和字符串)

Java 将两种数据类型合并为新数据类型(路径和字符串),java,parameters,type-conversion,Java,Parameters,Type Conversion,也许这是一个愚蠢的问题,但是:有可能将两种数据类型(如Path和String)组合成一种新的数据类型吗 我的实际问题如下:我正在重构一些代码。现在我有了一个重命名文件的方法。但我有四种方法,而不是只有一种,因为参数不同: public void copyFile(Path filesource, Path filedest) { try { Files.copy(filesource, filedest, REPLACE_EXISTING, COPY_ATTRIBUTES

也许这是一个愚蠢的问题,但是:有可能将两种数据类型(如Path和String)组合成一种新的数据类型吗

我的实际问题如下:我正在重构一些代码。现在我有了一个重命名文件的方法。但我有四种方法,而不是只有一种,因为参数不同:

public void copyFile(Path filesource, Path filedest) {
    try {
        Files.copy(filesource, filedest, REPLACE_EXISTING, COPY_ATTRIBUTES);
    } catch (FileSystemException e) {
        e.printStackTrace();
    } catch (IOException e) {
        e.printStackTrace();
    }       
}


public void copyFile(String filesource, Path filedest) {
    this.copyFile(getPathObjekt(filesource), filedest);
}


public void copyFile(Path filesource, String filedest) {
    this.copyFile(filesource, getPathObjekt(filedest));
}


public void copyFile(String filesource, String filedest) {
    this.copyFile(getPathObjekt(filesource), getPathObjekt(filedest));
}
因此,最好这样做,而不是使用四种方法:

public void(copyFile(StringPath filesource, StringPath filedest){

}

为什么不使用
java.io.File

它已经有了可以将路径与文件名组合在一起的构造函数

public void copyFile(File filesource, File filedest) {

}

我不确定,但Java不会将字符串/路径自动装箱到新实体StringPath。也许你应该让界面简单一些,让用户适应它