关键字的使用(八)

  一、this的使用

      1.this是什么

        ♦在Java中,this关键字比较难理解,它的作用和其词义很接近。

          它在方法内部使用,即这个方法所属对象的引用。

          它在构造器内部使用,表示该构造器正在初始化的对象。

        ♦this可以调用类的属性、方法、构造器

        ♦什么时候使用this关键字?

          当在方法内需要用到调用该方法的对象时,就用this。

          具体的:我们可以用this来区分属性和局部变量。

          比如:this.name = name;

        ♦使用this.调用属性、方法

          例子:

            class Person{

              private String name;

              private int age;

              public Person(String name,int age){

                this.name = name;

                this.age = age;

              }

              public void getInfo(){

                syso("姓名“ + name);

                this.speak();

              }

              public void speak(){

                syso("年龄:"  + age);

              }

              

            }

        Φ重要:

          1.在任意方法或构造器内,如果使用当前类的成员变量或成员方法可以在其前面添加this,增强程序的可读性,不过,我们通常省略this

          2.当形参与成员变量同名时,如果在方法内或构造器内需要使用成员变量,必须添加this来表明该变量是类的成员变量

          3.使用this访问属性和方法时,如果在本类中未找到,会从父类中查找

        ♦使用this调用本类的构造器

         例子:

          

class Person{
    private String name;
    private int age;
    public Person(){//无参构造器
          System.out.println("新对象实例化")
     
    }              

    public Person(String name){
         this();//调用本类的无参构造器
         this.name = name;
     
   }

    public Person(String name,int age){
          this(name);//调用本类的一个有参构造器
          this.age = age;
        
    }

}            

    2.注意:

      1.可以在本类的构造器中使用"this(形参类表)"的方式,调用本类中重载的其他构造器

      2.明确:构造器中不能通过"this(形参列表)"的方式调用自身的构造器

      3.如果一个类中声明了n个构造器,则最多有n-1个构造器中使用了"this(形参列表)"

      4."this(形参列表)"必须声明在类的构造器的首行

      5.在类的一个构造器中,最多只能声明一个"this(形参列表)"

原文地址:https://www.cnblogs.com/lingtiaoti/p/12355489.html