黑马程序员--03.面向对象--04.子类构造必须访问父类构造的原因 this_super语句的含义【个人总结】

来源:互联网 发布:淘宝三皇冠 编辑:程序博客网 时间:2024/05/17 07:12

子类构造必须访问父类构造的原因

this和super的含义

----------- android培训、java培训、java学习型技术博客、期待与您交流! ------------

1.     子类构造方法必须访问父类构造方法的原因

{1}. 原因:子类继承自父类,那么子类就必须要拥有父类的所有财产和父类的功能。财产指的是父类的成员变量和成员方法。

{2}. 成员方法的代码全部存放在方法区内存中。

{3}. 成员变量的值不同的构造函数而使得不同变量的值,所以存放到堆内存中。

{4}. 过程:在构造每一个子类对象的时候,首先要去它的父类中查看一下它的父类有哪些成员变量可以拿来继承。

这些成员变量的取值会因为初始化使用不同的父类构造函数不同而不同,所以会导致财产的取值(成员变量的取值)不一样。

所以一定要在子类的构造方法中指定要调用的父类的构造方法以便得到自己的要继承的成员变量及其值

2.     this和super的含义

【1】. super语句

{1}. super语句和this语句含义一样,是调用父类的指定的构造方法来初始化子类需要从父类继承的成员变量。

{2}. super语句绝对不是因为要初始化父类的成员变量而来构建父类的对象。调用super语句并没有构建父类对象,仅仅是由于构造函数的目的在于为成员变量进行初始化。

***没有关键字new,就绝对不会有对象产生。!!!!!***

【2】. super关键字

子类对象被创建之后,就可以通过this关键字super关键字来区分哪些财产是从父类得来,哪些财产是自己的

----------- android培训、java培训、java学习型技术博客、期待与您交流! ------------