黑马程序员技术交流社区
标题:
方法的覆写问题!
[打印本页]
作者:
心?=忐§忑]
时间:
2014-3-23 08:06
标题:
方法的覆写问题!
在父类中使用了private访问权限,而在子类中使用了default访问权限,这叫覆写吗?为什么?
作者:
追逐
时间:
2014-3-23 08:18
不叫 被private修饰的所有变量和函数都只在本类中有效
private:私有,权限修饰符:用于修饰类中的成员(成员变量,成员函数).
私有化的数据只在本类中有效。
将成员变量私有化以后。类以外技术建立了对象也不能直接访问。
需要注意的是:私有仅仅只是封装的一种表现形式。
之所以队伍提供访问方式。就以为可以在访问方式中加入逻辑判断等语句。
对访问的数据进行操作。提高代码健壮性。
作者:
Up↑Lee↗
时间:
2014-3-23 08:21
覆盖:
1,子类覆盖父类,必须保证子类权限大于等于父类权限,才可以覆盖,否则编译失败。
2,静态只能覆盖静态。
private: 抽象类中的私有的抽象方法,不被子类所知,就无法被复写。
而抽象方法出现的就是需要被复写。
作者:
蓝枫
时间:
2014-3-23 08:43
不能覆写,private:私有,权限修饰符。用于修饰类中的成员(成员变量和成员函数),当父类中的成员被private修饰后,就隐藏了其内容,不能被覆写!如果要调用,必须建立set和get方法,对其内容进行访问。
作者:
Ranger
时间:
2014-3-23 09:03
不能覆写,父类中被private修饰的成员变量和成员方法都不能被子类继承,所以也就不存在覆写的问题了
作者:
tcny
时间:
2014-3-23 09:38
当然不是了。覆盖也叫覆写,实际上他不是针对被声明为private的方法的,因为父类中的private方法根本在其子类和其他类中看不到,所以也就不存在覆写一说了。defalut,public,默认方法才能被覆写,但是子类覆写方法的权限要大于等于父类方法的权限。比如public方法只能被子类public方法覆写,却不能被默认或者defalut方法覆写。
作者:
H-Deka
时间:
2014-3-23 16:41
不能覆盖,因为父类中的private方法子类无法访问,更不能去覆盖
作者:
杨殿生
时间:
2014-3-23 22:14
这不叫复写 在父类中用private 修饰的函数跟本就没有提供给子类使用 子类也是访问不到的 所以不是复写
作者:
无此姓名
时间:
2014-3-23 22:29
private 修饰后子类根本看不到,何谈复写
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2