Java中子类的访问权限为何比父类大? 5
7个回答
展开全部
因为 向上转型及java程序设计维护的原因
例:
假设一个父类A 拥有的方法 public void setXXX(){} 可以被其他任意对象调用
这个方法被子类B 覆写后 为 void setXXX(){} 即 默认的 访问权限 只能被本包极其子类 所访问
假设 其他包中的对象 C 调用 方法为:
get( A a){
a.setXXX();
}
而此时传入的对象为B类对象,假设为b此时b将转型为a但是b中的setXXX() 调用权限
已经被缩小了这将造成错误。所以子类对象不能比父类对象访问权限大
以上只是一个例子还有其他出于易维护、易代码结构设计的设计思想原因
例:
假设一个父类A 拥有的方法 public void setXXX(){} 可以被其他任意对象调用
这个方法被子类B 覆写后 为 void setXXX(){} 即 默认的 访问权限 只能被本包极其子类 所访问
假设 其他包中的对象 C 调用 方法为:
get( A a){
a.setXXX();
}
而此时传入的对象为B类对象,假设为b此时b将转型为a但是b中的setXXX() 调用权限
已经被缩小了这将造成错误。所以子类对象不能比父类对象访问权限大
以上只是一个例子还有其他出于易维护、易代码结构设计的设计思想原因
展开全部
你说看子类中可以访问的方法比父类多吧 因为继承有了父类的还有了自己的呗。你看富二代啥都没,有了他老爹的就很无敌了。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
首先在继承的时候子类不能比父类的访问权限小,这是原则,基于这里那么子类只可能要大于等于父类的拉
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
子类继承了父类的非私有的属性和方法,还可以扩展自己的属性和方法,而这些就是子类特有的
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
2012-09-24
展开全部
父类能实现的子类一定能实现...
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询
广告 您可能关注的内容 |