关键字在函数上进行声明。
最后看一下异常覆盖时的细节:(A)、子类在覆盖父类方法时,如果父类方法抛出异常,子类覆盖的方法只能抛出父类方法异常或者其子集。
(B)、父类方法如果抛出多个异常,子类在覆盖父类方法时,只能抛出父类方法异常的子集。 (C)、如果父类中的方法没有抛出异常。 子类覆盖父类是,绝对不能声明异常。只能进行try catch 。
综上所述,如果匿名内部类的父类中方法声明了异常,那么其子类就可以声明其父类方法的异常或者其子集。
如下示例:
class Inter
{
public void show()throws Exception
{ }
}
class Demo
{
public static void main(String[] args)
{
try
{
new Inter()
{
public void show()throws Exception
{
System.out.println(5/1);
System.out.println(5/0);
}
}.show();
}
catch (Exception e)
{
System.out.println("异常");
}
}
}