继承 方法重写 组合(尚学堂视频学习总结_003)
来源:互联网 发布:windows hadoop安装包 编辑:程序博客网 时间:2024/05/16 07:10
类中只有单继承
老祖宗:Object类,间接或直接继承于此类
子类继承父类的属性和方法,除了父类的构造方法
普通方法默认都有两个参数:this ,super;
new子类对象时,内存中普通方法是用super指向父类对象
构造方法:如果要继承父类的,第一句默认是super() ??? 也是往上一层层
普通方法:对象调用时在当前类找,如果没有,则由隐式参数找到上一级(父类)一直往上找
【override】
方法重写 --> 类的继承关系 --> 方法名、参数、返回类型一样!
权限:重写的方法不能把权限范围缩小了,这样会影响父类的方法范围?!
如原来父类是public,子类却变成protect!错的!
异常:子类还不能比父类抛出更多的异常!
【构造方法与继承】
- 区分大小写。再次强调方法名与类名必须相同,并且没有返回值
场景:
父类:无参构造方法,有参构造方法
子类:同上
结果:
new子类无参:依次调用父类无参,子类无参
new子类有参:依次调用父类无参,子类有参
如果注释掉父类的无参构造方法,则子类无参构造方法编译时便会出错了。
那是因为JVM调用子类无参构造方法时,只要父类显示定义了构造方法,则会去父类找无参构造方法。
找不到,因此报错。
解决方法:在子类构造方法中:第一句加上super(参数); 这里参数根据父类已写明的构造方法来。
如果父类中没有无参构造方法,子类无参构造方法没有参数,则上面super(参数),可以传递一个常量即可达到调用父类有参构造方法的目的。
人家结论:子类如果有多个构造函数的时候,父类要么没有构造函数,
让编译器自动产生,那么在执行子类构造函数之前先执行编
译器自动产生的父类的缺省构造函数;要么至少要有一个显
式的缺省构造函数可以让子类的构造函数调用。
让编译器自动产生,那么在执行子类构造函数之前先执行编
译器自动产生的父类的缺省构造函数;要么至少要有一个显
式的缺省构造函数可以让子类的构造函数调用。
http://bbs.csdn.net/topics/100047866
【组合与继承】
都可以代码复用
组合:
子类内:父类作为子类的属性,先在子类new好,后面子类方法中可直接使用该父类对象
0 0
- 继承 方法重写 组合(尚学堂视频学习总结_003)
- 尚学堂视频学习顺序
- 尚学堂视频学习顺序
- static this(尚学堂视频学习总结_002)
- 数组基础与字符串(尚学堂视频学习总结_004)
- 尚学堂的全套学习视频
- 看尚学堂视频Java学习笔记
- 尚学堂视频
- 面向对象与面向过程(尚学堂视频学习总结_001)
- 尚学堂自学方法
- 尚学堂学习笔记。。。
- 尚学堂&浪曦视频学习推荐顺序
- 尚学堂学习周期及相关视频简介
- (转)尚学堂&浪曦视频学习推荐顺序
- 尚学堂 linux视频学习笔记(未完待续)
- 尚学堂学习周期及相关视频简介
- 尚学堂视频 SSH & J2EE
- 尚学堂hibernate的总结
- 面向对象与面向过程(尚学堂视频学习总结_001)
- CreateEvent共享事件对象(进程间共享)
- 作业day03
- 漫谈“推荐系统”
- 三字母词与转义字符
- 继承 方法重写 组合(尚学堂视频学习总结_003)
- Golang(Go语言)的三大设计目标
- java23种设计模式详解
- Apple Pay出场带热NFC 国产手机厂商拥抱银联
- openwrt make menuconfig 选项
- 二层攻击之:mac层攻击
- Android通过JNI操作串口
- protoc-gen-lua message之间相互引用问题 导致 upvalue 'message_type' (a nil value)
- MySQL server has gone away