Java--this的使用

1、this 是类中的默认引用,代表当前实例;当类服务于某个对象时,this则指向这个对象。

      当创建某个对象时,this指向这个对象的地址;访问对象中的属性,即是访问对象地址中属性的空间。

2、this的使用方法

  第一种用法:调用实例属性(this.属性)、实例方法(this.方法);

     当实例变量和局部变量重名时,优先访问局部变量。如果需要访问实例变量,则需要在实例变量前 加this.

     

package com.monv.gouzaofangfa;
/*
 * 学生类
 */
public class student {
    
    String name;//姓名
    int    age;//年龄
    String sex;//性别
    double score;//分数
    //构造方法
    public student(String name,int age,String sex,double score){
        //如果成员变量和局部变量重名,由于局部变量的优先级高 访问成员变量的时候要用this.
        this.name = name;
        this.age  = age;
        this.sex  = sex;
        this.score = score;
    }
    //方法
    public void sayHi(){
        System.out.println("该学生姓名为:"+name+";年龄为:"+age+";性别为:"+sex+";分数为:"+score);
        this.showname();//this.方法
    }
    public void showname(){
        System.out.println(this.name);
    }
}

 第二种用法:调用本类中的其他构造方法。比如:this();this(实参);

    注意事项:1.this()必须是第一条语句 2.只能调用一次

package com.monv.gouzaofangfa;
/*
 * 学生类
 */
public class student {
    
    String name;//姓名
    int    age;//年龄
    String sex;//性别
    double score;//分数
    //这个是默认的构造方法 
    public student(){

    }
    
    public student(String name,int age){
        this.name = name;
        this.age  = age;
    }
    
    public student(String name,int age,String sex,double score){
        //如果成员变量和局部变量重名,由于局部变量的优先级高 访问成员变量的时候要用this.
//        this.name = name;
//        this.age  = age;
        
//        this();//如果不传参数 调用的是默认的构造方法
//        name和age的赋值在两参的构造方法中有赋值,这里可以调用两参的构造方法来给name和age赋值
        this(name,age);//调用的是带两个参数的构造方法 注意事项:1.必须是第一条语句2.只能调用一次
        this.sex  = sex;
        this.score = score;
    }
    //方法
    public void sayHi(){
        System.out.println("该学生姓名为:"+name+";年龄为:"+age+";性别为:"+sex+";分数为:"+score);
        this.showname();//this.方法
    }
    public void showname(){
        System.out.println(this.name);
    }
}

 

posted @ 2020-07-28 14:31  改Bug的小魔女  阅读(266)  评论(0编辑  收藏  举报