文档章节

this关键字

 烟中泪
发布于 2017/02/24 21:06
字数 222
阅读 2
收藏 0

this关键字:

除了被声明为static的地方外,this关键字可以出现在类中任何地方,在对象建立后为“这个对象”的参考名称。

class Peron {
        private String name;
        public Person() {
        }
        public void setName(String name) {
                this.name = name;
        }

}

在setName()方法中有两个变量名都是name,一个是类的全局变量,一个是方法中的局部变量。想要在方法中给全局变量赋值就需要加“this.”,如果不加的话就是给局部变量赋值就没有什么意义了。

当然this不仅可以调用变量,也可以调用方法。而常用的就是调用构造方法:

public class Person{
        public Person() {
                System.out.println("Hello");
        }
        public Person(int a) {
                this();
                System.out.println("It is " + a);    
        }
}

注意:this调用构造方法只能写在{}中的第一行,不然会编译报错;构造器不能迭代调用自己。

 

 

© 著作权归作者所有

共有 人打赏支持
粉丝 0
博文 25
码字总数 8535
作品 0
私信 提问

暂无文章

Spirng事务简单入门

一、概述 spring支持编程式事务管理和声明式事务管理两种方式: 1.编程式事务管理使用TransactionTemplate或者直接使用底层的PlatformTransactionManager。对于编程式事务管理,spring推荐使...

嘴角轻扬30
17分钟前
3
0
独立IP被恶意绑定域名处理办法

80端口: listen 80 default_server; server_name _; return 444; 443端口: listen 443 ssl default_server; server_name _; 加上证书路径 return 444;...

会当凌绝顶
20分钟前
3
0
RabbitMQ+PHP 教程五(Topics)

开始 在前面的教程中,我们改进了日志系统。我们使用的是一种直接广播方式,而不是只使用一种直接(direct)广播方式的fanout交换机,从而获得了有选择地接收日志的可能性。 虽然使用直接direc...

hansonwong
28分钟前
1
0
未来Linux Kernel 将不支持可变长数组VLA

但使用 VLA 会存在问题,包括增加运行时开销——因为数组长度需要在运行时确定; LLVM Clang 编译器不支持结构内 VLA,它只支持 C99 风格的 VLA;存在安全隐患。Linus Torvalds 对 VLA 的使用...

linux-tao
29分钟前
2
0
给Jenkins增加Linux奴隶节点

Add linux slave node in the Jenkins https://mohitgoyal.co/2017/02/14/add-linux-slave-node-in-the-jenkins/ https://www.howtoforge.com/tutorial/ubuntu-jenkins-master-slave/ https:......

圣洁之子
31分钟前
2
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部