• Tags , , ,         
  • 2017-12-11  21:13:26        
  • 17 °C    

    如果你希望在方法的内部获得对该方法的当前对象的引用。为此有个一个专门的关键字:this,来实现这个功能。这个关键字只能在方法内部使用,而且就是表示对‘调用方法的那个对象”的引用。如果在方法内部调用同一个类的另一个方法,也可以用this来调用,但是记得,同一个类调用另一个方法一般是直接调用即可。而this关键字有下面的几种作用:

    this调用对象的方法和属性


    public class Breakyizhan{
    public int x = 600;
    public int y = 66;
    public void sum(){
    // 通过 this 能够选择到成员变量,也就是类的属性
    int z = this.x + this.y;
    System.out.println("x + y = " + z);
    }
    
    public static void main(String[] args) {
    Breakyizhan obj = new Breakyizhan();
    obj.sum();
    }
    }
    /*
    (www.breakyizhan.com) 输出结果是:
    666
    */

    this可以区分对象里面的属性和方法参数


    如果对象的方法参数和对象的属性重名了,用this可以区分对象里面的属性和方法参数

    public class Breakyizhan{
    public String name;
    public int age;
    
    //方法参数的名字和类的成员变量名字一样了,用this来区分
    public Breakyizhan(String name, int age){
    this.name = name;
    this.age = age;
    }
    
    public void write(){
    System.out.println("我是" + name + ",已经" + age + "岁了");
    }
    
    public static void main(String[] args) {
    Breakyizhan obj = new Breakyizhan("Break易站", 3);
    obj.say();
    }
    }
    /*
    (www.breakyizhan.com) 输出结果是:
    我是Break易站,已经3岁了
    */

    this还可以用来初始化对象


    </pre>
    public class Breakyizhan{
    public String name;
    public int age;
    
    //方法参数的名字和类的成员变量名字一样了,用this来区分
    public Breakyizhan(String name, int age){
    this.name = name;
    this.age = age;
    }
    
    //多了一个构造器,构造器里面调用了另一个构造器(特殊方法),用来初始化对象
    public Breakyizhan(){
    this.("Break易站", 3);
    }
    
    public void write(){
    System.out.println("我是" + name + ",已经" + age + "岁了");
    }
    
    public static void main(String[] args) {
    Breakyizhan obj = new Breakyizhan();
    obj.say();
    }
    }
    /*
    (www.breakyizhan.com) 输出结果是:
    我是Break易站,已经3岁了
    */
    <pre>

    原创文章如需转载,请注明出处,本文内容来自:Java的this关键字的用法 - Break易站


    ---Author: Arvin Chen ---Web Address: www.breakyizhan.com (Break易站)

     
    转载请保留页面地址:https://www.breakyizhan.com/javamind/805.html