this理解
来源:互联网 发布:网络攻击可以分为 编辑:程序博客网 时间:2024/05/21 11:08
this 作用
1.在return中使用, 返还当前对象的句柄
书中实例:
public class Leaf {
private int i = 0;
Leaf increment(){
++i;
return this;
}
void print(){
System.out.println("i="+i);
}
public static void main(String[] args){
Leaf x = new Leaf();
x.increment().increment().increment().print();
}
}
打印结果: i=3
通过increment()方法返回this,代表当前对象的句柄。所以可以方便对同一个对象执行多项操作。
2.在构建器里调用构建器 和引用成员变量
一个类写多个构建器,为了避免重复代码。
(1)在一个构建器里调用另一个构建器,但不可调用两个。
(2)根据参数列表分辨构造器。
(3)调用构造器必须是第一件做的事,否则会受到编译报错。
(4)非构造器不能调用构造器
调用内容(1)this.成员变量;(2)this(参数列表);
书中实例:
public class Flower{
private int petalCount = 0;
private String s = new String("null");
Flower(int petals){
petalCount = petals;//参数petals传递给成员变量petalCount
}
Flower(String ss){
s = ss;//参数ss传递给成员变量s
}
Flower(String s ,int petals){
this(petals);//调用第一个构造器
//this(s);若这样写,报错。只能一个。
this.s = s;//参数s 传递给成员变量s。this区分两个s。
}
Flower(){
this("hi",47);//调用第三个构造器
}
void print(){
//this(11);非构造器不能调用构造器
}
}
另外从一个类的一个方法调用两一个类方法,不必使用this,只要简单调用。
实例:class Apricot{
viod pick(){}
void pit(){
pick();
}
}
也可以写成this.pick(),但无此必要,编译器能自动完成。
- this理解
- 理解javascrpit中的this
- 理解类this指针
- 完全理解关键字this
- js-this指针理解
- 深入理解this关键字
- 理解this指针
- 理解 JavaScript 中的 this
- JavaScript this 深入理解
- php $this->的理解
- 理解JavaScript 中的 this
- JavaScript this个人理解
- java this 的理解
- (this->*p)();的理解
- Javascript this的理解
- this call() apply()理解
- JS中的this理解
- This指针的理解
- Php利用simpleXML对xml操作
- Quartz定时调度(Spring整合)
- 无人机/平衡车等姿态测量相关知识
- C#循环创建按钮,并可以通过点击判断出是哪个按钮
- 二叉树相关面试题汇总
- this理解
- 程序员的鄙视链
- 基于LZO算法的编解码器
- (读书笔记)《玩着玩着就能成为PPT高手》——PPT制作的8个关键点
- Vim常见指令与问题总结
- 原生javascript FileReader对象实现图片上传本地预览效果
- VTK之自定义Filter类
- JavaScript函数式编程(一)
- numpy函数(1)——linspace创建等差数列