我是Java的新手,我正在阅读Statement课程的文档,并遇到了executeLargeUpdate()
默认实现将抛出UnsupportedOperationException
default long executeLargeUpdate(String sql) throws SQLException
这里的默认实现声明它抛出SQLException,并检查SQLException
的基类,我发现它是Exception
而UnsupportedOperationException
是RuntimeException
的子类。
我无法理解上述内容是什么意思?默认实现会抛出什么意思?请帮我理解!
答案 0 :(得分:1)
请注意,Statement
不是类,而是接口。从Java 8开始,接口可以为其方法提供“默认”实现。这意味着在实现接口时,您不必为其所有方法编写实现。您可以选择使用标有default
的方法的默认实现。
这里讨论的方法就是这样一种方法。默认实现是抛出UnsupportedOperationException
。 throws SQLException
子句与默认实现无关。它只是告诉调用者,在调用此方法时,请注意可能会抛出SQLException
,请处理它。
Statement
的实施者可以选择不实施executeLargeUpdate
,在这种情况下,调用时,此方法会抛出UnsupportedOperationException
。这就是“默认实现将抛出......”的意思。