JAVA中的super关键字,继承和多态
2015-01-15 23:57
363 查看
今天学的内容主要是关于类的继承
1 关于继承
继承的作用是实现代码的复用,提高编程效率
什么时候用继承,当A is a B的时候,即B包含了A关系,
比如dog is an animal,狗是一种动物,智能手机是一种手机,等等,是大类包含小类,但是少了这个小类,大类不会不存在
继承的概念容易跟成员变量混淆,成员变量是指 A has a B
一个父类可以有多个子类,但在JAVA中一个子类只能有一个父类,就像一个人只能有一个亲生父亲一样
父类的方法和成员变量都可以被子类使用,子类也可以定义自己的方法或变量,或者对父类的方法进行重写。
2 多态
父类引用可以指向子类对象,但是只能访问父类所定义的成员,不能访问子类扩展的部分
子类引用不能指向父类
3 super
super关键字用于调用父类的构造方法
JAVA中构造子类对象前必须先构造父类对象,因为没有父亲怎么会有儿子呢?
调用父类构造的两种方式
1 在父类中添加无参的构造方法
2 在子类的构造方法中显示父类的有参构造
eg:
public Animal{
int age;
Animal(){ }// 方法1
}
public Dog extends Animal{
int height;
Dog(int age){
super(age);
}
}
个人学习整理!
1 关于继承
继承的作用是实现代码的复用,提高编程效率
什么时候用继承,当A is a B的时候,即B包含了A关系,
比如dog is an animal,狗是一种动物,智能手机是一种手机,等等,是大类包含小类,但是少了这个小类,大类不会不存在
继承的概念容易跟成员变量混淆,成员变量是指 A has a B
一个父类可以有多个子类,但在JAVA中一个子类只能有一个父类,就像一个人只能有一个亲生父亲一样
父类的方法和成员变量都可以被子类使用,子类也可以定义自己的方法或变量,或者对父类的方法进行重写。
2 多态
父类引用可以指向子类对象,但是只能访问父类所定义的成员,不能访问子类扩展的部分
子类引用不能指向父类
3 super
super关键字用于调用父类的构造方法
JAVA中构造子类对象前必须先构造父类对象,因为没有父亲怎么会有儿子呢?
调用父类构造的两种方式
1 在父类中添加无参的构造方法
2 在子类的构造方法中显示父类的有参构造
eg:
public Animal{
int age;
Animal(){ }// 方法1
}
public Dog extends Animal{
int height;
Dog(int age){
super(age);
}
}
个人学习整理!
相关文章推荐
- Java方法继承、方法重载、方法覆盖,多态和super关键字小总结
- JAVA 多态、继承、super关键字 day9
- Java继承和多态===Java super关键字
- JAVA核心技术 第五章 继承 类、超类、子类 关键字this super 多态 动态绑定
- Java方法继承、方法重载、方法覆盖,多态和super关键字小总结
- java学习笔记-继承中super关键字
- 黑马程序员_java的继承性- 继承-final关键字-抽象类-接口-多态-异常-包-多线程-
- JAVA第七节-继承,继承中方法重写,继承的初始化顺序,final关键字,super关键字,object类
- Java继承和多态===Java static关键字以及Java静态变量和静态方法
- 【java继承中super关键字】
- JAVA学习笔记12——super关键字+继承的内存分析+组合
- 学习prototypejs中的继承实现机制(二):让$super更像java中的super关键字
- 黑马程序员——Java基础:继承、final关键字、抽象、接口、多态
- JAVA_继承演示04_FoodManagerDeamo.java____super关键字____冒泡排序
- java面向对象-super、继承、覆盖、多态、类加载、访问控制
- java入门学习(6)—封装,继承,多态,this,super,初始代码块
- 23 java 继承 super 关键字
- Lesson_for_java_day09--继承、实例化、构造方法、覆盖、重载、this关键字、super关键字、全局变量和局部变量
- 05.黑马程序员-继承、super关键字和多态
- Java继承和多态===Java final关键字:阻止继承和多态