关于继承及父类引用指向子类的一些总结
2016-04-27 22:34
260 查看
随想随写,不足的我们大家一起补充
继承:子类可继承父类的所有可访问到的属性与方法;
如若类A是类B的父类,即是类B是类A的子类:class B extends A{ }
父子类间继承时,可造成属性与方法的重写(子类的属性或方法将父类的属性或方法覆盖)
1、注意:
java是单一继承,不允许多重继承。
一个子类只能有一个父类,不能有多个父类;
一个父类可以有多个子类(要是一个子类能够继承多个父类,对于同名方法,如果父类的方法体不一样,将造成一个方法拥有多个方法体)
2、关于属性和方法的绑定
绑定:成员变量和方法的调用与其所在类联系起来。
静态绑定:程序执行之前即被绑定。
动态绑定:程序运行时绑定。
成员变量多是静态绑定
方法多是动态绑定,除了final,static,private和构造方法是前期绑定外,其他的方法全部为动态绑定
当父类引用可以指向被实例化的子类对象时:
(1)父类引用调用子类方法时,如果方法被重写,则调用的是子类的方法,否则调用父类的方法(运行时绑定(动态绑定));
(2)父类引用调用子类成员变量时,调用的是父类的属性(处理成员变量时是静态绑定,而非运行时绑定)
继承:子类可继承父类的所有可访问到的属性与方法;
如若类A是类B的父类,即是类B是类A的子类:class B extends A{ }
父子类间继承时,可造成属性与方法的重写(子类的属性或方法将父类的属性或方法覆盖)
1、注意:
java是单一继承,不允许多重继承。
一个子类只能有一个父类,不能有多个父类;
一个父类可以有多个子类(要是一个子类能够继承多个父类,对于同名方法,如果父类的方法体不一样,将造成一个方法拥有多个方法体)
2、关于属性和方法的绑定
绑定:成员变量和方法的调用与其所在类联系起来。
静态绑定:程序执行之前即被绑定。
动态绑定:程序运行时绑定。
成员变量多是静态绑定
方法多是动态绑定,除了final,static,private和构造方法是前期绑定外,其他的方法全部为动态绑定
当父类引用可以指向被实例化的子类对象时:
(1)父类引用调用子类方法时,如果方法被重写,则调用的是子类的方法,否则调用父类的方法(运行时绑定(动态绑定));
(2)父类引用调用子类成员变量时,调用的是父类的属性(处理成员变量时是静态绑定,而非运行时绑定)
相关文章推荐
- java对世界各个时区(TimeZone)的通用转换处理方法(转载)
- java-注解annotation
- java-模拟tomcat服务器
- java-用HttpURLConnection发送Http请求.
- java-WEB中的监听器Lisener
- Android IPC进程间通讯机制
- Android Native 绘图方法
- Android java 与 javascript互访(相互调用)的方法例子
- 介绍一款信息管理系统的开源框架---jeecg
- 聚类算法之kmeans算法java版本
- java实现 PageRank算法
- PropertyChangeListener简单理解
- c++11 + SDL2 + ffmpeg +OpenAL + java = Android播放器
- 插入排序
- 冒泡排序
- 堆排序
- 快速排序
- 二叉查找树