类中的访问顺序

class T1{
static{
System.out.println("static");
}
{
System.out.println("构造代码块");
}
T1(){
System.out.println("aaaaa");
}

}

访问结果为:

static

构造代码块

aaaaa


A:一个类的初始化过程
成员变量的初始化
默认初始化
显示初始化
构造方法初始化
还有:静态代码块》构造代码块》构造方法


(2)子类和父类构造

class X {//1
Y b = new Y();
X() {
System.out.print("X");
}
}


class Y {
Y() {
System.out.print("Y");
}
}


public class Test extends X {
Y y = new Y();//2
Test() {
super();
System.out.print("Z");
}
public static void main(String[] args) {
new Test(); 
}
}

结果是YXYZ

过程是main先行,到Test 碰到父类x进入x执行,得到YX

然后执行子类Test得到YZ


看程序写结果:
A:成员变量的问题
int x = 10; //成员变量是基本类型
Student s = new Student(); //成员变量是引用类型
B:一个类的初始化过程
成员变量的初始化
默认初始化
显示初始化
构造方法初始化
C:子父类的初始化(分层初始化)
先进行父类初始化,然后进行子类初始化。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值