首页 > 解决方案 > 如何将具有不同返回类型但具有相同主体的两种方法与 throw 语句结合起来?

问题描述

我有两种具有不同数据类型但具有相同主体的方法。我没有使用任何return. 我只使用这些方法来抛出异常。有什么方法可以结合这两种方法或任何优化代码的方法吗?

public MyDataType1 method1(MyArg arg){
    /* some logic */
    throw new CustomException();
}
public MyDataType2 method2(MyArg arg){
    /* some logic, same as above method logic*/
    throw new CustomException();
}

PS:我不想使用接口或一些具有通用逻辑的新方法。

标签: javapolymorphism

解决方案


使用接口使兼容

interface DataType{
}

class MyDataType1 implements DataType{
}

class MyDataType2 implements DataType{
}

你将能够

public DataType method1(MyArg arg){
    /* some logic */
    throw new CustomException();
}

推荐阅读