oop_day04_继承、重写_20150812
2015-08-12 21:38
483 查看
oop_day04_继承、重写_20150812
1.继承:
1)作用: 代码的重用
2)通过extends实现继承
3)父类/基类:所有子类所共有的变量和方法
子类/派生类:子类所特有的变量的方法
4)当子类继承父类后,子类具有:
------子类所特有的+父类所共有的
5)一个类只能继承一个父类----单一继承
一个父类可以有多个子类
6)继承具有传递性
7)java规定: 构造子类之前必须先构造父类
子类构造方法的第一句默认有个super()调父类的无参构造
若自己通过super调用父类构造的话,则不再默认提供
super调用父类构造,必须位于子类构造的第1句
2.super:指代当前对象的父类对象
用法:
1)super.成员变量名------访问父类的成员变量
2)super.方法名()-----------调用父类的方法
3)super()---------------------调用父类的构造方法
代码示意:
3.向上造型:
1)父类型的引用指向子类的对象
2)能点出来什么,看引用的类型
4.方法的重写(override):
1)发生在父子类中,方法名相同,参数列表相同,方法体不同
2)重写方法被调用时,看对象的类型
代码示意:
总结:java的三大特性之一:继承
1.继承:
1)作用: 代码的重用
2)通过extends实现继承
3)父类/基类:所有子类所共有的变量和方法
子类/派生类:子类所特有的变量的方法
4)当子类继承父类后,子类具有:
------子类所特有的+父类所共有的
5)一个类只能继承一个父类----单一继承
一个父类可以有多个子类
6)继承具有传递性
7)java规定: 构造子类之前必须先构造父类
子类构造方法的第一句默认有个super()调父类的无参构造
若自己通过super调用父类构造的话,则不再默认提供
super调用父类构造,必须位于子类构造的第1句
2.super:指代当前对象的父类对象
用法:
1)super.成员变量名------访问父类的成员变量
2)super.方法名()-----------调用父类的方法
3)super()---------------------调用父类的构造方法
代码示意:
class Coo{ int a; Coo(int a){ } } class Doo extends Coo{ //什么都不写,报错 /* //默认代码 Doo(){ super(); } */ //解决 Doo(){ super(1); } }
3.向上造型:
1)父类型的引用指向子类的对象
2)能点出来什么,看引用的类型
4.方法的重写(override):
1)发生在父子类中,方法名相同,参数列表相同,方法体不同
2)重写方法被调用时,看对象的类型
代码示意:
package oo.day04; public class OverrideDemo { public static void main(String[] args) { OAoo o1 = new OBoo(); //向上造型,父类引用指向子类对象 OAoo o2 = new OCoo(); test(o1); test(o2); } public static void test(OAoo oo){ oo.show(); } } class OAoo{ void show(){ System.out.println("Aoo-show()"); } } class OBoo extends OAoo { void show(){ System.out.println("Boo-show()"); } } class OCoo extends OAoo { void show(){ System.out.println("Coo-show()"); } }
总结:java的三大特性之一:继承
相关文章推荐
- Linux Pthread——1
- 显示器 Linux 性能 18 (一个命令行工具传递)
- Apache和Nginx的特点
- 【Hadoop系列第八章】Flume 和 sqoop(上)之 Flume
- Hadoop API的改变
- 母港TOP用新API_url = "api_port/port";20150803_破解版
- TQ2440 学习笔记—— 5、Linux烧写——USB
- Nginx模块开发(3)————使用upstream访问第三方服务
- Centos 6.4 python 2.6 升级到 2.7
- Linux下如何用GCC编译动态库
- 第十八天 doGet和doPost
- 搭建嵌入式linux应用程序调试环境
- Boost库之Program_options
- Linux环境PHP5.5以上连接SqlServer2008【全网最经典无错版】
- CentOS启用iptables防火墙
- shell脚本回顾01:脚本跟踪和脚本参数
- Linux中SVN定时备份总结
- Linux基础一(个人整理)
- OpenGL ES 绘制圆环
- Tomcat的基本认识和常用配置