将throws子句添加到toString方法标题时遇到问题

问题描述 投票:0回答:1

有人可以帮忙吗?我是一名CS学生,正在用Java上一个项目上课。我们需要创建一个LinkedQueue类中抛出的检查异常。一切都很好。在LinkedQueue上方的类中,我们需要确认异常而不对其进行处理。因此,对于类中调用LinkedQueue方法的每个方法,我都添加了“ throws EmptyQueueException”。除toString方法外,它均有效。当我添加throws子句时,出现错误,提示

“ overrider java.lang.Object.toString”

与Object.toString中的throws子句不兼容的ExceptionEmptyQueueException。

有什么想法/帮助吗?

非常感谢

java exception checked
1个回答
1
投票

你不能。 Object#toString()方法的约定保证它不会引发任何已检查的异常,并且由于Object(所有内容)必须符合该约定,因此您无法添加已检查的异常。 toString()应该从不抛出任何形式的异常,因为在整个应用程序中数千个地方都使用了它,并且应该“安全”地调用。

© www.soinside.com 2019 - 2024. All rights reserved.