黑马程序员---面向对象:this关键字
2013-05-23 15:41
375 查看
------- Java、.Net、Android培训期待与您交流!-------
this关键字:
片面理解:当成员变量和局部变量名相同时,用this关键字区别他们。
实际上this代表本类的对象,代表它所在函数所属对象的引用。用白话说就是谁在调用this关键字所在的函数,那么this就代表谁。
this的应用:当定义类中功能时,该函数内部要用到调用函数的对象时,这时就用this关键字来表示这个对象。但凡本类功能内部使用了本类对象都用this关键字表示。
this语句:用于构造函数间进行互相调用。且只能定义字构造函数的第一行。因为初始化要先执行。(书面语称为关键字,但程序员为了区分有是也称作this语句)
例子:
上述代码实现了构造函数间的调用,且构造函数间不能形成循环调用,否者会报错,因为不存在重复初始化动作。如果我们将上面18和19语句互换位置,且第8句改为:this.name = "王五";,编译时会报错:构造函数的调用放在第一行;假如编译通过,且能运行,那么我们得到的结果将p1和p2两对象name= "王五",与我们想要的结果相悖。所以构造函数间的调用一定要放在第一行,那么它的初始化动作将不会影响到后面的操作。
this关键字:
片面理解:当成员变量和局部变量名相同时,用this关键字区别他们。
实际上this代表本类的对象,代表它所在函数所属对象的引用。用白话说就是谁在调用this关键字所在的函数,那么this就代表谁。
this的应用:当定义类中功能时,该函数内部要用到调用函数的对象时,这时就用this关键字来表示这个对象。但凡本类功能内部使用了本类对象都用this关键字表示。
this语句:用于构造函数间进行互相调用。且只能定义字构造函数的第一行。因为初始化要先执行。(书面语称为关键字,但程序员为了区分有是也称作this语句)
例子:
上述代码实现了构造函数间的调用,且构造函数间不能形成循环调用,否者会报错,因为不存在重复初始化动作。如果我们将上面18和19语句互换位置,且第8句改为:this.name = "王五";,编译时会报错:构造函数的调用放在第一行;假如编译通过,且能运行,那么我们得到的结果将p1和p2两对象name= "王五",与我们想要的结果相悖。所以构造函数间的调用一定要放在第一行,那么它的初始化动作将不会影响到后面的操作。
相关文章推荐
- 黑马程序员-day05-面向对象(this关键字和super关键字)
- 黑马程序员——学习日志4面向对象(概念,类与对象,封装,构造函数,this关键字)
- 黑马程序员 Java面向对象(封装,构造函数,this关键字,静态static)
- 黑马程序员——第5天——(面向对象)构造函数,构造代码块,this关键字
- 黑马程序员--面向对象(一)封装、成员变量与局部变量、匿名对象、构造函数、this关键字
- 黑马程序员_Java基础_面向对象(概述、类与对象关系、成员变量、封装private、构造函数和构造代码块、this关键字)
- 黑马程序员_day05 面向对象(匿名对象,构造函数,this关键字)
- 黑马程序员——面向对象(this关键字)-第11天
- 黑马程序员—Java面向对象(类和对象、封装、构造方法、this关键字、static关键字)
- 黑马程序员------毕老师视频笔记第五天------面向对象(this关键字)
- 黑马程序员——面向对象5:this关键字
- 黑马程序员-面向对象(stati、this关键字)
- 黑马程序员——>第五天<面向对象(匿名对象-封装-构造代码块-this关键字)>
- 黑马程序员---Java面向对象(下)
- 黑马程序员_面向对象的三大特征封装、继承、多态
- 黑马程序员_04_面向对象
- 黑马程序员------面向对象(No.6)(接口、多态)
- 黑马程序员————面向对象(day9)
- 黑马程序员-- 面向对象VII--
- 黑马程序员_面向对象的思想