Java面向对象之继承
2015-07-02 21:47
344 查看
Java允许类之间的继承关系
目的:实现代码的重用,避免代码的重复
形式:通过extends关键字来实现继承
class Son extends Father{}
子类 父类
其中父类包括所有子类所共有的属性和方法
子类除了父类能继承的成员,还包括自己特有的属性和方法
特点:单一继承,一个类只能继承一个父类,但一个父类可以有多个子类
特性:传递性,父传子,子传孙...
注意:创建子类对象时,构造子类之前必须先构造父类
即,在子类的构造方法中存在默认的super()来调用父类构造
若不写super()方法,则编译器自动添加一个super()
若写了,则编译器不再添加,这时若有重载的构造方法也需要自己写
super和this
super:指代当前对象的父类对象
用法:super.成员变量名----访问父类成员方法
super.方法名()--------调用父类方法
super()------------------调用构造方法
this:指代当前对象
用法:this.成员变量名-----访问成员变量
this.方法名()-------调用方法
this()--------------调用构造方法
注意:super和this在一个方法中不能共存
方法和类的主要作用就是封装一段代码,降低代码出错的可能性,便于维护
当内部实现细节改变时,只要保证对外的功能定义不变,则其他模块代码便无需更改
目的:实现代码的重用,避免代码的重复
形式:通过extends关键字来实现继承
class Son extends Father{}
子类 父类
其中父类包括所有子类所共有的属性和方法
子类除了父类能继承的成员,还包括自己特有的属性和方法
特点:单一继承,一个类只能继承一个父类,但一个父类可以有多个子类
特性:传递性,父传子,子传孙...
注意:创建子类对象时,构造子类之前必须先构造父类
即,在子类的构造方法中存在默认的super()来调用父类构造
若不写super()方法,则编译器自动添加一个super()
若写了,则编译器不再添加,这时若有重载的构造方法也需要自己写
super和this
super:指代当前对象的父类对象
用法:super.成员变量名----访问父类成员方法
super.方法名()--------调用父类方法
super()------------------调用构造方法
this:指代当前对象
用法:this.成员变量名-----访问成员变量
this.方法名()-------调用方法
this()--------------调用构造方法
注意:super和this在一个方法中不能共存
方法和类的主要作用就是封装一段代码,降低代码出错的可能性,便于维护
当内部实现细节改变时,只要保证对外的功能定义不变,则其他模块代码便无需更改
public class A { public A(int i){ } } class B extends A { public B(){ // super();//这时默认没有,父类没有无参构造,须自己写 super(1);//调用父类有参构造 } }
相关文章推荐
- 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简单理解
- 插入排序
- 冒泡排序
- 堆排序
- 快速排序
- 二叉查找树
- [原创]java局域网聊天系统