【07每天十分钟,javase基础全搞定-this关键字下】

this关键字

  • 作用二:方便构造方法之间相互调用
  • this()使用的时候必须是位于方法中有效代码的第一行才行(说白了就是必须在第一行)。

下面是一个学生类,大家先看一下普通方法的调用

public class Student {

//    普通方法aa
    public void aa(){
        bb();//在同一个类里面,普通方法之间可以通过 方法名()直接相互调用
        System.out.println("我是方法aa");
    }
    
//    普通方法bb
    public void bb(){
        aa();
        System.out.println("我是方法bb");
    }
}

可以清楚的看到,普通方法在同一个类中,可以通过 方法名()直接相互调用。

但是构造方法不行。必须用this(),用this()来调用构造方法,通过不同参数调用不同的构造方法

public class Student {
//    下面的name sex age是三个成员变量(也叫做全局变量)
    String name ="丽丽";
    String sex="男";

//    这是无参构造方法1,构造方法之间不能像普通方法那样直接调用
    public Student(){
//        这里调用的是参构造方法2
        this("老刘","男");//用this()来调用构造方法,通过不同参数调用不同的构造方法
        System.out.println("我是构造方法1");
    }

//    这是有参构造方法2
    public  Student(String name,String sex){
        this.name=name;
        this.sex=sex;
        System.out.println(this.name+"我是构造方法2");
    }
}

在测试类中运行构造方法1和结果:

public class Text01 {
    public static void main(String[] args) {
//        创建对象的同时调用了无参的构造方法1,进行初始化赋值
        Student stu1=new Student();
    }
}

可以看到结果是:构造方法1中,先按顺序调用了构造方法2,再执行的构造方法1的输出

老刘我是构造方法2
我是构造方法1
  • 9
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值