构造函数,this关键字

构造函数这里先解释一段代码:
public class Alone{
//构造一个函数
public Alone(){ //x1
System.out.println("你好~~"); //x2
}
//重载函数
public Alone(String s){ //x3
this(); //x4
System.out.println(s); //x5
}
//重载函数
public Alone(int a){ //x6
this("Hello!"); //x7
System.out.println(a); //x8
}
//定义主函数入口
public static void main(String[] args){
//创建一个Alone类的对象
Alone al=new Alone(30); //x9
} //x10
}
该程序的执行顺序:x9->x6->x7->x3->x4->x1->x2->x5->x8->x10;结果为:
你好~~
Hello!
30
解释:程序先从主函数入口进入,执行x9行代码,接下来调用x6行的重载函数(有人就会纳闷这里是怎么调用的,事实程序是根据参数的不同调用的。看,30为int型,所以调用x6行的重载函数,调用其他行的程序也是这个道理,记住,根据参数不同去区别),接下来执行第七行代码,这里有个this关键字,其作用是在一个函数内调用其他函数被重载了的构造函数;
接着
this方法调用x3行重载的构造函数;接着执行(ˇˍˇ) (ˇˍˇ) x4行代码,这里的this方法调用x1行的代码,接下执行x2,x5,x8;执行到x10行代码结束程序。
关于构造函数和this关键字的几个需要重要注意的地方:
1.构造函数的名字与类名一样,没有返回值,其前面不允许有void关键字;
2.怎么知道调用的是哪个构造函数,是根据参数的不同;
3.this在花括号内必须是第一句,因为在程序中构造函数必须首先被执行;
4.不能在普通方法中调用this(...)。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值