java修炼—static修饰的代码段
来源:互联网 发布:有注册码的软件 编辑:程序博客网 时间:2024/06/06 13:19
找工作进行了一个多月了,还是没拿到一个offer,但是不会放弃,抓紧时间努力学习!总是有我的工作的。
在笔试的时候,曾经遇到过在类中用static修饰的代码段,如下面的类所示:
<pre name="code" class="java">public class myclas {private int ivar1;static {System.out.println("staic fregement");}myclas(){ivar1=333;}public void showsss(){System.out.println("ivar1是"+ivar1);}static void staicExampeFunction(){System.out.println("staicExampeFunction");}}
static修饰的代码段,何时执行呢?
1)在实例化一个对象的时候会被执行一次,且,仅仅在第一次实例化一个对象的时候执行
public static void main(String[] args) {// TODO Auto-generated method stubSystem.out.println("下面会有输出吗?");myclas myvar1=new myclas();//这个时候会直接调用static代码块System.out.println("下面会有输出吗?");myclas myvar2=new myclas();}
结果:
下面会有输出吗?
staic fregement
下面会有输出吗?
2)在没实例化之前,用类名直接调用静态函数,也会被被执行:
public static void main(String[] args) {// TODO Auto-generated method stubmyclas.staicExampeFunction();//这个之前会调用static代码块System.out.println("下面会有输出吗?");myclas myvar1=new myclas();System.out.println("下面会有输出吗?");myclas myvar2=new myclas();}
结果:
staic fregement
staicExampeFunction
下面会有输出吗?
下面会有输出吗?
总结:无论实例化几次或者调用几次方法,static代码段都执行一次...比如,你创建了类的两个实例,但是只有创建第一个实例的时候static代码段才被执行.创建第二个的时候将不执行...使用类名调用静态方法也同理
static代码段可以有多个.但是,效果和整合在一起没什么区别
0 0
- java修炼—static修饰的代码段
- JAVA STATIC 修饰的代码段
- java的static代码段【转】
- java中static修饰符的代码的加载顺序
- java的static修饰符
- Java的static修饰符
- java中synchronized修饰的方法或代码块和static synchronized修饰方法或代码块的区别
- 关于Java中的static代码段
- Java —— static 修饰的方法不可以覆盖
- java中static函数和static代码段
- Java static 修饰符的用法
- java static修饰符的问题
- 详解java的static修饰符
- java static修饰符的使用
- java 中static修饰变量的初始值
- Java中static修饰类的问题
- java中static修饰特殊的类
- [Java] 修饰符 static 的作用
- 商业银行组织架构
- C++内存分配情况
- 银行各部门职责
- 2014 广州创业周末 (Startup Weekend Guangzhou #3)
- C语言中的extern
- java修炼—static修饰的代码段
- 编译时调试模式
- android开发收藏url
- PowerDesigner反向工程,根据数据库结构生成ER图(Oracle)
- mysql 学习笔记
- loadRunner参数篇
- 【数据结构与算法】【查找】斐波那契查找的代码实现
- 李白打酒
- C++静态成员变量