java中的方法:JAVA中类的覆盖方法
来源: 发布时间:星期四, 2009年2月12日 浏览:94次 评论:0
使用类 ![](/icons/67774de.gif) 继承关系 ![](/icons/67774dou.gif) 可以从已有 ![](/icons/67774de.gif) 类产生 ![](/icons/67774yi.gif) 个新类 ![](/icons/67774dou.gif) 在原有特性基础上 ![](/icons/67774dou.gif) 增加了新 ![](/icons/67774de.gif) 特性 ![](/icons/67774dou.gif) 因此需要修改父类中已有 ![](/icons/67774de.gif) 思路方法 ![](/icons/67774dou2.gif) 如果子类中定义思路方法所用 ![](/icons/67774de.gif) 名字、返回类型和参数表和父类中思路方法使用 ![](/icons/67774de.gif) 完全 ![](/icons/67774yi.gif) 样 ![](/icons/67774dou2.gif) 称子类思路方法覆盖了父类中 ![](/icons/67774de.gif) 思路方法 ![](/icons/67774dou.gif) 即子类中 ![](/icons/67774de.gif) 成员思路方法将隐藏父类中 ![](/icons/67774de.gif) 同名思路方法 ![](/icons/67774dou2.gif) 利用思路方法隐藏 ![](/icons/67774dou.gif) 可以重定义父类中 ![](/icons/67774de.gif) 思路方法 ![](/icons/67774dou2.gif) 要注意 ![](/icons/67774de.gif) 是 ![](/icons/67774dou.gif) 覆盖 ![](/icons/67774de.gif) 同名思路方法中 ![](/icons/67774dou.gif) 子类思路方法不能比父类思路方法 ![](/icons/67774de.gif) 访问权限更严格 ![](/icons/67774dou2.gif)
例如 ![](/icons/67774dou.gif) 如果父类中思路方法method ![](/icons/67774kh.gif) ![](/icons/67774de.gif) 访问权限是public ![](/icons/67774dou.gif) 子类中就不能含有private ![](/icons/67774de.gif) method ![](/icons/67774kh.gif) ![](/icons/67774dou.gif) 否则 ![](/icons/67774dou.gif) 会出现编译 ![](/icons/67774cuowu.gif) ![](/icons/67774dou2.gif)
在子类中 ![](/icons/67774dou.gif) 若要使用父类中被隐藏 ![](/icons/67774de.gif) 思路方法 ![](/icons/67774dou.gif) 可以使用super关键字 ![](/icons/67774dou2.gif)
例5 ![](/icons/67774yi.gif) 14 ![](/icons/67774class.gif) Po ![](/icons/67774int.gif) { void pr ![](/icons/67774int.gif) ![](/icons/67774kh.gif) { ![](/icons/67774System.gif) .out.pr ![](/icons/67774int.gif) ln(”This is the super ![](/icons/67774class.gif) !”); }
public ![](/icons/67774static.gif) void ![](/icons/67774main.gif) (String args ![](/icons/67774zhk2.gif) ){ Po ![](/icons/67774int.gif) superp= ![](/icons/67774new.gif) Po ![](/icons/67774int.gif) ![](/icons/67774kh.gif) ; superp.pr ![](/icons/67774int.gif) ![](/icons/67774kh.gif) ; Po ![](/icons/67774int.gif) 3d subp= ![](/icons/67774new.gif) Po ![](/icons/67774int.gif) 3d ![](/icons/67774kh.gif) ; subp.pr ![](/icons/67774int.gif) ![](/icons/67774kh.gif) ; } ) Class Po ![](/icons/67774int.gif) 3d extends Po ![](/icons/67774int.gif) { void pr ![](/icons/67774int.gif) ![](/icons/67774kh.gif) { ![](/icons/67774System.gif) .out.pr ![](/icons/67774int.gif) ln(”This is the sub ![](/icons/67774class.gif) !”); ) ) ![](/icons/67774chengxu.gif) ![](/icons/67774de.gif) 执行结果如下:
This is the super ![](/icons/67774class.gif) ! This is the sub ![](/icons/67774class.gif) !
相关文章
读者评论
发表评论
|
|