this关键字

今天的java学习中,学到了this关键字,现在做个小小的总结。

this关键字用于类中,当程序中新建或调用相应的类的对象或对象的方法时,在执行到this关键字时,this就代表那个对象。。。(好吧,有点说不清了)

还是用代码解释一下吧。。

//当成员名和函数形参变量名(局部变量名)一样时(有歧义时)才用this,不同时不需要用this,不会引发歧义即可
class Person
{
    private name;
    Person(String name)
    {
        this.name=name;     //如主函数所示,新建对象p时,this.name可看成p.name
    }
    public void getName()
    {
        System.out.println(this.name)//此处可直接用name,因为没有重名形参,此处name是this.name的简写
        this.show();//成员方法和成员变量效果一摸一样,此处也可用show()
        //如主函数所示,调用对象p时,this.name等价于p.name  this.show()等价于p.show()
    }
    public void show()
    {
        System.out.println(this.name)//此处同理可用name
    }
}
class Demo
{
    public static void main(String[] args)
    {
        Person p=new Person("lisi");//新建一个对象p
        p.getName();//调用对象p
    }
}

如果类中不会出现同名现象,一般情况下不要用this关键字。。

===========================================================================================================

补充:

1,在类中定义的方法中使用了本类对象,且对象为调用该方法的对象时,用this关键字

举例如下:

class Person
{
    private int name;
    Person(int age)
    {
        this.age=age;
    }
    public boolean cmp(Person p)//参数类型为Person
    {
        return this.age==p.age;//this是指调用该方法的对象
    }
}

2,this语句

举例如下:

//this语句,格式:this();用于构造函数间相互调用(只能置于构造函数第一行)
class Person
{
    private String name;
    private int age;
    Person(String name)
    {
        this.name=name;
    }
    Person(String name,int age)
    {
        this(name);//相当于调用同类中的另一个构造函数
        this.age=age;
    }
}







评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值