Java面试题小练(二)

Java异常处理方式

Java的异常处理机制——抛出异常,捕获异常,声明异常
Java的异常处理是通过5个关键字来实现的
try,catch,throw,throws和finally
Java通过面向对象的方法进行异常处理,一旦方法抛出异常,系统自动根据该异常对象寻找合适异常处理器来处理该异常,把各种不同的异常进行分类,并提供了良好的接口。
抛出异常:throw
捕获异常:try,catch,finally
声明异常:throws

throw和throws的区别

1.位置不同:
throw:方法内部
throws:方法的签名处,方法的声明处
2.内容不同:
throw+异常对象(检查异常,运行时异常)
throws+异常的类型(可以多个类型,用,拼接)
3.作用不同:
throw: 异常出现的源头,制造异常。
throws:在方法的声明处,告诉方法的调用者,这个方法中可能会出现我声明的这些异常。然后调用者对这个异常进行处理:要么自己处理要么再继续向外抛出异常

Java中重写和重载有哪些区别?

方法的重载和重写都是实现多态的方式,区别在于前者实现的是编译时的多态性,而后者实现的是运行时的多态性。
重载发生在一个类中,同名的方法如果有不同的参数列表(参数类型不同,参数个数不同或者两者都不同)则视为重载;
重写发生在子类与父类之间,重写要求子类被重写方法与父类被重写方法有相同的返回类型。

方法重载的规则:

1.方法名一致,参数列表中参数的顺序,类型,个数不同
2.重载与方法的返回值无关,存在于父类和子类,同类中
3.可以抛出不同的异常,可以有不同修饰符

方法重写的规则:

1.参数列表必须完全与被重写方法的一致,返回类型必须完全与被重写方法的返回类型一致
2.构造方法不能被重写,声明为final的方法不能被重写,声明为static的方法不能被重写,但是能够被再次声明
3.访问权限不能比父类中被重写的方法的访问权限更低
4.重写的方法能够抛出任何非强制异常,无论被重写的方法是否抛出异常。但是,重写的方法不能抛出新的强制性异常,或者比被重写方法声明的更广泛的强制性异常,反之则可以。

posted @ 2023-10-30 22:30  奕帆卷卷  阅读(19)  评论(0)    收藏  举报