黑马程序员——继承
2015-12-08 21:21
316 查看
——Java培训、Android培训、iOS培训、.Net培训、期待与您交流! ——-
继承
(1)把很多类的相同特征和行为进行抽取,用一个类来描述。让多个类和这个类产生一个关系。
这样的话,多个类就可以省略很多代码。这个关系就是继承。java中用extends关键字表示。
(2)继承的体系结构
A:多个具体的对象,不断的向上抽取共享的内容,最终形成了一个体系。这个体系叫做继承体系。
B:继承体系的学习和使用原则
**学习顶层的内容。因为他是整个体系的共性内容。
**创建子类使用。也就是使用底层的具体对象。
(3)继承的特点:
A:java中只能单继承,没有多继承。
B:java可以有多重(层)继承。
(4)继承的好处:
继承的出现提高了代码的复用性。
继承的出现让类与类之间产生了关系,提供了多态的前提。
(5)子父类中的成员关系
A:成员变量
在子类方法中使用一个变量时:
首先,在方法的局部变量中找这个变量,有则使用。
否则,在本类中找成员变量,有则使用。
否则,在父类中找成员变量,有则使用。
否则,报错。
B:成员方法
用子类对象使用一个方法时。
首先,在子类中找这个方法,有则使用。
否则,在父类中找这个方法,有则使用。
否则,报错。
继承
(1)把很多类的相同特征和行为进行抽取,用一个类来描述。让多个类和这个类产生一个关系。
这样的话,多个类就可以省略很多代码。这个关系就是继承。java中用extends关键字表示。
(2)继承的体系结构
A:多个具体的对象,不断的向上抽取共享的内容,最终形成了一个体系。这个体系叫做继承体系。
B:继承体系的学习和使用原则
**学习顶层的内容。因为他是整个体系的共性内容。
**创建子类使用。也就是使用底层的具体对象。
(3)继承的特点:
A:java中只能单继承,没有多继承。
B:java可以有多重(层)继承。
(4)继承的好处:
继承的出现提高了代码的复用性。
继承的出现让类与类之间产生了关系,提供了多态的前提。
(5)子父类中的成员关系
A:成员变量
在子类方法中使用一个变量时:
首先,在方法的局部变量中找这个变量,有则使用。
否则,在本类中找成员变量,有则使用。
否则,在父类中找成员变量,有则使用。
否则,报错。
B:成员方法
用子类对象使用一个方法时。
首先,在子类中找这个方法,有则使用。
否则,在父类中找这个方法,有则使用。
否则,报错。
重写和重载的区别? 重载:在同一类中。方法名相同,参数列表不同。重载可以改变返回类型。 重写:在不同类中(子父类中)。 方法声明相同(返回类型,方法名,参数列表均相同)。 重写需要注意: **子类方法的访问权限要大于等于父类方法的访问权限。 **静态只能重写静态。但是这种情况一般不会出现。 构造方法 **子类的实例化过程 ***子类创建对象时,会先去创建父类的对象。 默认是去调用父类的无参构造方法。 ***子类构造方法中,第一行默认是super() ***为什么子类中第一行会默认有super() 因为他继承父类的成员使用,使用前这些成员必须初始化, 而他们是父类的成员,所以,必须通过父类进行初始化。 所以,会先创建一个父类的对象。 **当父类没有无参构造方法时 必须使用this或者super调用其他的构造方法。 (6)this和super的区别 this:代表本类对象的引用。 super:代表父类的存储空间。
相关文章推荐
- 黑马程序员——单例设计模式
- 健康的生活——导言篇
- 黑马程序员——static关键字
- iOS面试考察点(大总结)待整理的答案
- 黑马程序员之JAVA反射
- JAVA基础面试笔试题
- 黑马程序员——java高新技术---线程池
- 黑马程序员_JavaIO流(四)
- iOS面试经历
- 剑指offer,面试题一:赋值运算符函数
- 黑马程序员——java基础---集合--迭代
- 《程序员的自我修养》--读书笔记
- 程序员应该做开源项目的 6 个原因
- 黑马程序员——java基础---集合--Collection
- PHP程序员如何突破技术瓶颈
- 面试复习必备之:Java面向对象
- iOS开发常见知识点、注意点以及面试常见问题
- 黑马程序员——Java之多线程(上)
- 黑马程序员——Java重点基础之反射
- 黑马程序员——OC之Category、Block