构造方法中的this和super

自己第一次看完se的时候还不是很了解,这些什么this,super,但是现在要开始找实习工作了,自己打算就把se,框架等在看一遍,也把自己看的一些整理出来

this:当前类的对象的引用

那有那些应用呢?

1.区分成员变量和局部变量

   

这段代码我相信很多人都写过,在setName()方法中有一个和成员变量重名的name,那我们怎么区分呢?

这时候this关键字就很好的解决了

2. this是在方法中使用的,哪个对象调用了该方法,那么,this就代表调用该方法的对象引用

构造方法中的this和super_第1张图片

3.this什么时候存在的?当创建对象的时候,this存在的

super:指的是父类的存储空间(理解为父类的引用)

作用:

   1.调用父类的成员变量:

            super.成员变量;

      2.调用父类的构造方法:

            super(参数);

     3.调用方法的成员方法:

        super.成员方法();


l继承中的构造方法注意事项:

1,如果我们手动给出了构造方法,编译器不会在给我们提供默认的空参数构造方法

   如果我们没写任何的构造方法,编译器提供给我们一个空参数构造方法

2, 在构造方法中,默认的第一条语句为 super();

   它是用来访问父类中的空参数构造方法,进行父类成员的初始化操作

3, 当父类中没有空参数构造方法的时候,怎么办?

  a: 通过 super(参数) 访问父类有参数的构造方法

  b: 通过 this(参数) 访问本类中其他构造方法

   注意:本类中的其他构造方法已经能够正常访问父类构造方法,但是必须要能访问到父类的构造方法

4, super(参数) 与 this(参数) 不能同时在构造方法中存在,按具体的情况要写,但是必须要能访问到父类的构造方法

 




你可能感兴趣的:(构造方法,this,super)