Python相当于Java的UnsupportedOperationException是什么?

2022-09-03 06:59:59

我正在研究Python的内置异常,并想知道Java的UnsupportedOperationException最接近的等价物是什么。NotImplementedError很接近,但似乎暗示了一些略有不同的东西。我应该使用运行时错误还是实现我自己的?Exception


答案 1

最接近的等效项是简单地不实现不受支持的方法。如果尝试使用不存在的方法,则生成的异常是 。AttributeError


答案 2

我不了解Java,但是看看你链接到的内容(以及网上的一些例子),我会说没有一个单一的等价物。这是对异常类型的相当广泛的描述。

如果由于操作数的类型错误而不支持该操作,则可以使用 TypeError。如果由于值以某种方式不兼容而不受支持,则可以使用 ValueError。或者,正如user2357112所指出的那样,当您尝试访问不存在的方法时,您只会不执行任何操作并获得属性错误。