首页 > 编程语言 > 详细

java静态块,非静态块,构造函数

时间:2015-08-28 15:42:47      阅读:187      评论:0      收藏:0      [点我收藏+]


  1. java静态块是在类加载时自动执行的,非静态代码块是在创建对象时自动执行的代码。不创建对象不执行该类的非静态代码块。顺序是静态块-->非静态块-->构造函数。

  2. 静态代码块只在第一次new时执行一次,而非静态代码块每new一次就执行一次。

父类:

package test;


public abstract class fu {

private int age;

public abstract void test();

static {

 System.out.println("这是父类静态代码块");

}

public fu(){

System.out.println("这是父类构造函数");

}

 

{

System.out.println("这是父类非静态代码块");

}

}

子类:

package test;


public class zi extends fu{

static{

System.out.println("这是子类静态代码块");

}

public zi(){

System.out.println("这是子类构造函数");

}

{

System.out.println("这是子类非静态代码块");

}

@Override

public void test() {

System.out.println("这是子类方法");

}

}

Main函数

package test;


public class Main {


public static void main(String[] args) {

fu zi=new zi();

zi.test();


}


}

结果:

这是父类静态代码块

这是子类静态代码块

这是父类非静态代码块

这是父类构造函数

这是子类非静态代码块

这是子类构造函数

这是子类方法


java静态块,非静态块,构造函数

原文:http://my.oschina.net/u/2265027/blog/498720

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!