转来的:java中静态块和构造函数的执行顺序问题
public class Test2 extends TestStatic{
static{
System.out.println("b");
}
Test2(){
System.out.println(2);
}
public static void main(String args[]){
TestStatic A=new Test2();
A=new Test2();}
}
class TestStatic {
static{System.out.println("a");}
TestStatic(){
System.out.println(1);}
}
执行结果:
a b 1 2 1 2
可以看出执行顺序为:先执行父类中静态代码块,然后是子类静态块
,其次父类构造函数,最后是子类构造函数。另外注意静态代码块只执行一次
,所以后面语句
A=new Test2();
执行结果只有
1 2。
相关文档:
谈谈Java继承中的重载,覆盖和隐藏
好久不写博客了,距离上一篇已经过了两年多了。这两年在干嘛,总之一年难尽!
前一段时间忙了两个月,忙着研究和做一些SSH架构的东西,两个月下来,收获颇丰,最近闲下来了,于是就痛快的开始玩游戏,但是不知怎么地,怎么玩都没意思,于是决定开始再好好研究研究Java吧。于是大概翻了翻 ......
Action注解配置
使用方式如下:
Java代码
@ParentPackage(value="struts-default")
@Namespace(value="/test")
@Result(name="success",value="/userSuc.jsp")
@Results({
@Result(name="success",value="/userSu ......
import java.io.BufferedInputStream;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
public class RunDosCommand {
public static void main(String[] args) throws IOException {
String cmd = "ipconfig";
R ......
package com.mapabc.sz_hbt.util;
/**
* <p>Title:整型与长度为4的字节数组的互换 </p>
* <p>Description: </p>
* <p>Copyright: Copyright (c) 2007-5-10</p>
* <p>Company: www.mapabc.com</p>
* @author luoyj
* @version 1.0
*/
public class Byte ......
package com.gamvan.tools;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Calendar;
public class FormatDateTime {
/**
* 日期类操作工具
*/
public static String formatDateTime(String ymd){
//格式化当前时间
java.text ......