JAVA平台的this关键字

JAVA平台的this关键字,其实和LINUX内核里面的current指针一样.LINUX内核中的current指针永远指向当前被调度的任务,JAVA平台的this关键字永远指向当前被操作的对象.下面分析JAVA平台this关键字的作用.


1.对字段使用this

    当对象的一个被方法或构造器的参数屏蔽时,可以用关键字this来实现对类字段的访问.如下:

public class Point{
    public int x = 0;
    public int y = 0;
  
    public Point(int x,int y){
        this.x = x;
        this.y = y;
    }
}
上述代码中字段里面的"x"、"y"和构造器的参数重叠了.可以用关键字this来表明操作的是类对象的字段而不是构造器的参数.


2.对构造器使用this

    在一个构造器中,还可以使用this关键字来调用同一个类中的另外构造器,如下面:

public class Rectangle{
    private int x,y;
    private int width,height;
    public Rectangle(){
        this(0,0,0,0);
    }
    public Rectangle(int width,int height){
        this(0,0,width,height);
    }
    public Rectangle(int x,int y,int width,int height){
        this.x = x;
        this.y = y;
        this.width = width;
        this.height = height;
    }
    ...
}
在这里需要注意的是,比如我们名义上调用的是构造器Rectanle(),由于内部封装了this(0,0,0,0).JAVA平台会根据签名实际调用的是Rectangle(int x,int y,int width,int height)构造器.

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值