我有一个名为 getInfo()
的方法。它只有一个参数,但参数只能有两种可能的类型,Exception
或自定义类CLAZZ_A
。因此,当我定义此方法 getInfo()
时,我想将其参数类型限制为这两种类型。我能做些什么?我相信 Java 泛型类型可能有用,但我不知道该怎么做。
最佳答案
也许只是重载:
getInfo(Exception e){}
getInfo(MyClass mc){}
这样,您将在编译时知道您的参数是什么,并保证它是两个可接受的参数之一。如果行为足够相似,您可以通过强制转换来调用另一个。
如果这没有吸引力,请考虑让您的对象扩展 Exception(如果相关),这样 getInfo(Exception e){}
就足够了。
关于java - 如何在方法中使用泛型参数来将参数类型限制为某些特定的类类型?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32774090/