重写(override)那点事
2016-03-06 22:39
274 查看
1、重写,英文override,中文也可翻译成覆盖,重写的方法必然与原方法一样:方法名称、参数列表、返回类型。其实经常用啦,访问权限的话,我还没觉得谁有病是的,把访问权限改变,也许是我能力不够吧
2、适用于对实例方法(对象方法)进行重写,其实是对方法体的重写
3、子类重写父类的实例方法
4、实现类重写接口(interface)的抽象方法
5、子类重写抽象基类的实例方法
6、静态方法可不存在重写,静态方法只有hide的说法哦。
7、注解是 @Override
8、注意与重载的区别,一开始这两个概念缺失搞混掉
9、小例子
class Man extends Person implements Jump, Walk, Walk.SingleWalk {
@Override //重写的注解,如果你改变了方法结构,编译器一定不会饶过你
public void normalJump() {
System.out.println("normaljump()");
}
@Override
public void bigJump() {
System.out.println("bigJump");
}
@Override
public void slowWalk() {
// TODO Auto-generated method stub
}
@Override
public void fastWalk() {
// TODO Auto-generated method stub
}
@Override
public void lowWalk() {
}
}
10、动态绑定(多态)的运用,一般伴随有重写的发生。
11、想到什么再补充吧
2、适用于对实例方法(对象方法)进行重写,其实是对方法体的重写
3、子类重写父类的实例方法
4、实现类重写接口(interface)的抽象方法
5、子类重写抽象基类的实例方法
6、静态方法可不存在重写,静态方法只有hide的说法哦。
7、注解是 @Override
8、注意与重载的区别,一开始这两个概念缺失搞混掉
9、小例子
class Man extends Person implements Jump, Walk, Walk.SingleWalk {
@Override //重写的注解,如果你改变了方法结构,编译器一定不会饶过你
public void normalJump() {
System.out.println("normaljump()");
}
@Override
public void bigJump() {
System.out.println("bigJump");
}
@Override
public void slowWalk() {
// TODO Auto-generated method stub
}
@Override
public void fastWalk() {
// TODO Auto-generated method stub
}
@Override
public void lowWalk() {
}
}
10、动态绑定(多态)的运用,一般伴随有重写的发生。
11、想到什么再补充吧
相关文章推荐
- jQuery学习笔记
- iOS音频播放(二):AudioSession
- C语言实现使用静态数组实现循环队列
- BroadcastReceiver
- 对软件工程的疑惑
- 数据结构之链表归并排序
- iOS音频播放(一):概述
- JavaScript Core -- 函数表达式面试题
- ASP.NET 网站如何集成QQ登录功能
- 娱乐大咖项目- 总结
- 基于MATLAB实现的云模型计算隶属度
- 内核分析 第二周
- 构建一个RESTful Web Service(Building a RESTful Web Service)
- 汇编语言对显存直接输出字符串
- Drop and Drag API学习与整理
- 《Linux内核分析》 操作系统是如何工作的
- 学习状况总结
- 0.九九乘法表[递归]
- [nodejs] nodejs开发个人博客(二)入口文件
- 【java】内存分析