校招刷题群
高效刷题 迎战校招
校招精选试题
近年面笔经面经群内分享
Java刷题群 前端刷题群 产品运营群
首页 > java语言 > 包相关和public等访问权限
题目

子类异常、访问权限与父类的关系?

解答

子类的对象可以作为父类的对象(引用时是对父类方法的引用,但是传入的对象是子类的对象,即用子类的对象来对父类进行实例化),但是反过来不行。所以:

1.子类的访问权限一定要比父类大或相等。【子访问权限>父访问权限】

例:

父类A拥有的方法public void setXXX(){}可以被其他任意对象调用。该方法被子类B重写后为void setXXX(){},即默认的访问权限只能被本包及其子类所访问。假设其它包中的对象C调用方法为:get(A a=new B()){a.setXXX();}。而此时传入的对象为B类对象b,此时b将转型为a,但是b中的setXXX()调用权限已经被缩小了这将造成错误。所以子类的方法的访问权限不能小于父类。

以上只是一个例子还有其他出于易维护、易代码结构设计的设计思想原因。

2.子类重写父类的方法时,抛出的异常大小不能比父类的异常大。【子异常<父异常】

C 0条回复 评论

帖子还没人回复快来抢沙发