黑马程序员技术交流社区
标题:
关于代码块执行顺序的问题
[打印本页]
作者:
周亮
时间:
2012-12-30 14:32
标题:
关于代码块执行顺序的问题
public class Person {
// 构造代码块
{
cry();
}
{
System.out.println("终于见到这个世界了");
}
static {
System.out.println("静态代码块");
}
public Person() {
// cry();
System.out.println("构造方法");
}
public Person(int age) {
// cry();
System.out.println("带参数构造方法");
}
public void cry() {
System.out.println("哇哇哇");
}
}
子父类关系时:
public class Person {
{
System.out.println("Person构造代码块");
}
static {
System.out.println("Person静态代码块");
}
public Person() {
System.out.println("Person构造方法");
}
}
public class Son extends Person {
{
System.out.println("Son构造代码块");
}
static {
System.out.println("Son静态代码块");
}
public Son() {
//super();
System.out.println("Son构造方法");
}
}
//测试方法
public static void main(String[] args) {
Son son = new Son();
}
Person静态代码块
Son静态代码块
Person构造代码块
Person构造方法
Son构造代码块
Son构造方法
静态代码块执行一次,构造代码块每次调用构造方法的时候都会执行。
他们的执行顺序是:静态代码块 -- 构造代码块 -- 构造方法
作者:
许庭洲
时间:
2012-12-31 07:22
值得学习ing!
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2