黑马程序员_java static的知识之静态代码块

------- android培训java培训、期待与您交流! ----------


/*
静态代码块。
格式:
static
{
静态代码块中的执行语句。
}

特点:随着类的加载而执行,执行一次,并优先于主函数。
用于给类进行初始化的

*/

class StaticCode
{
static
{
System.out.println("a");
}//没名字,没人调用它,它怎么执行呢?
public static void show()
{
System.out.println("show run");
}
}
/*
class StaticCodeDemo
{
static
{
System.out.println("b");
}
public static void main(String[] args)
{
new StaticCode();
new StaticCOde();
System.out.println("Hello World!");
}
static
{
System.out.println("c");
}
}*/
//*****\day06>javac 有两个class
//*****\day06>java StaticCodeDemo
//b c a over



class StaticCode
{
//StaticCode(){};
static
{
System.out.println("a");
}//没名字,没人调用它,它怎么执行呢?
public static void show()
{
System.out.println("show run");
}
}

class StaticCodeDemo
{
static
{
//System.out.println("b");
}
public static void main(String[] args)
{
//new StaticCode();
//new StaticCOde();
//System.out.println("Hello World!");
StaticCode.show();
StaticCode s = null;///静态代码块不执行,即没加载
s = new StaticCode();//用到默认的构造函数
//此时加载了,或StaticCode.show(),但凡用到它的内容时,才加载,只设个引用就不加载了,自己验证
}
static
{
//System.out.println("c");
}
}

/*
考试怎么考?
代码块的执行顺序
class StaticCode
{
StaticCode()
{
System.out.println("b");
}
static//静态代码块,给类初始化的
{
System.out.println("a");
//如果开始:int num = 9; 在这能否System.out.println("a"+num);?不能
}
{//构造代码块,给对象初始化的
System.out.println("c");
}
StaticCode(int x)//构造函数,给对应对象初始化的
{
System.out.println("d");//此处?System.out.println("a"+num),可以
}
public static void show()
{
System.out.println("show run");
}
}

class StaticCodeDemo
{
static
{
//System.out.println("b");
}
public static void main(String[] args)
{
new StaticCode(4);
//new StaticCode();
//new StaticCOde();
//System.out.println("Hello World!");
StaticCode.show();
//StaticCode s = null;///静态代码块不执行,即没加载
//s = new StaticCode();//用到默认的构造函数
//此时加载了,或StaticCode.show(),但凡用到它的内容时,才加载,只设个引用就不加载了,自己验证
}
static
{
//System.out.println("c");
}
}

//结果:a d c
*/

















------- android培训java培训、期待与您交流! ----------

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值