1. 程式人生 > >我的java學習-this指代的是什麼

我的java學習-this指代的是什麼

在初學習java的時候,對於this.x 和x的關係老是搞不清楚

  public class Point implements Moveable{
        private int x ;
        private int y ;
        public Point( int x , int y ){
        this.x = x ;
        this.y = y ;
    }

這個private int x ; private int y ;裡面的x,y是class Point裡面的類變數,私有性質的,不能直接被外部類呼叫,需要通過類Point裡面提供的setX(),setY(),getX(), getY()這些方法來訪問。

this.x,this.y

使用了this來指代,this其實就是當前所在類class Point,this.x指的就是private int x,class Point裡面的類變數,在class類內部方法裡面使用當前類變數,就是用this.x指代的方法用來和傳遞進來的引數做區分。

pulic Point(int x, int y){}帶有2個引數,在pulic Point這個建構函式裡面或者在其他的類方法裡面,引數(int x, int y)在自己類方法內部比如setX(int x)就是直接使用,this.x = x; 前面的this.x不能把他們分開看,這是一個整體,表示的是class Point類內部的類變數,後面的x是類方法所傳遞進來的變數。