A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

子类覆盖父类的方法时,子类的方法的访问权限不能比父类的低(比如父类方法是public级别的,子类方法就不能比public低)?

6 个回复

倒序浏览
黑马网友  发表于 2011-7-20 17:05:04
沙发
如果父类是public    子类就不能是private或者protected
回复 使用道具 举报
黑马网友  发表于 2011-7-20 17:30:14
藤椅
在多态中,声明类型是父类,引用的类型是子类,父类的方法在子类中被实现或被重载,假如子类的方法的访问权限比父类低的话,在父类中的定义的方法,子类方法却没有访问权限,会出现错误
回复 使用道具 举报
黑马网友  发表于 2011-7-20 17:54:30
板凳
父类中定义了变量和方法,子类要引用父类中的这些成员就需要比父类的访问权限大或一致,这就好比两个集合,如果一个集合想看到已知集合中的元素那它就要比已知的范围大足以包含它。
回复 使用道具 举报
黑马网友  发表于 2011-7-20 18:46:07
报纸
就像你投篮一样 篮球只能跟篮筐一样大或者比篮筐小才能投进去 如果篮球比篮筐还要大肯定投不进篮筐 很简单的道理 不必花太多时间去深究
回复 使用道具 举报
黑马网友  发表于 2011-7-20 21:53:51
地板
自己在开发软件上面试试不就知道了
没有必要提问的
继承来的 当然不能比别人的权限低
回复 使用道具 举报
黑马网友  发表于 2011-7-21 15:29:17
7#
其实,这个问题我后来想,其实就是  李德国   同学所说的道理,这才是技术的道理。其他同学的回答,从生活逻辑上看是可行的,但是不是在技术层面上。要知道有些生活中的逻辑是不能搬到计算机领域中去的。总之谢谢大家,开拓了思路。
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马