this关键字

来源:互联网 发布:jquery ajax json解析 编辑:程序博客网 时间:2024/06/05 06:24
package com.lrq;/** *  * @author 李瑞琦 * 解决全局变量跟局部变量同名的问题 * 1、在局部变量前加下滑线 * 2、通过this关键字 * 普通方法中,this总是指向调用该方法的对象。 * 构造方法中,this总是指向正要初始化的对象。 * this不能用于static方法。 * */public class TestThis {    public static void main(String[] args) {        Dog dog = new Dog("旺财");        System.out.println(dog.name);        dog.sayHello("八戒");    }}class Dog{    String name;    int age;    //空构造器    public Dog(){        System.out.println("我是空构造器");    }    /*    //把局部变量赋值给全局变量的时候如果重名    //1、可在局部变量前面加下划线    //有参构造器    public Dog(String _name){        name= _name;    }    //2、可用this关键字    public Dog(String name){        this.name= name;    }    */    public Dog(String name){        //调用空构造器,构造器在调用构造器的时候需放在方法的最上边并且只能调用一次        this();        this.name=name;    }    //在普通方法中this总是指向调用该方法的对象    public void sayHello(String name){        System.out.println(this.name+"----"+name);    }}