java:this的几种常用方法

this关键字在java中通常指当前对象。但是this其实还有几种延伸的用法,下面使用例子一一展示。
//1.this代表当前对象
        class A{
            int i=10;
            void func(){
                System.out.println(this.i);     
            }   
        }
    //1.1this代表对象--内部类中this的使用
    class outter{
        int p;
        class inner{
            int p;
            //写一个方法判断两个成员变量是否相同
            boolean isSame(){
                //在内部类中,只能通过外部类名加.this的方式访问到外部类,因为内部类依存于外部类
                if(this.p==outter.this.p)
                    return true;
                return false;
            }
        }
    }
//2.构造器的相互调用
 class A{
    A(){
        System.out.println("A()已被调用");
    }   
    A(int i){
        this();
        System.out.println("A("+i+")已被调用")
    }
 }
//3.用来区分成员变量与局部变量
class A{
    int x=10;
    void setNumber(int x){
        this.x=x;
    }
    void getNumber(){
        System.out.println(x);
    }
}

tips:this只能在非静态的代码中使用。this只和特定的对象关联,不和具体的类关联,不同的对象具有不同的this。


版权声明:本文为xiaoxuechi原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。