Java代码块
2015-08-10 15:02
465 查看
普通代码块:在方法中出现的{}就称为普通代码块,执行顺序从上到下;
静态代码块:在虚拟机加载类的时候就会顺序执行,而且只执行一次;
构造代码块:直接在类中定义且没有加static关键字的代码块称为构造代码块。构造代码块在创建对象时被调用,每次创建对象都会被调用,并且构造代码块的执行次序优先于类构造函数,执行顺序从上到下。
执行结果
静态代码块:在虚拟机加载类的时候就会顺序执行,而且只执行一次;
构造代码块:直接在类中定义且没有加static关键字的代码块称为构造代码块。构造代码块在创建对象时被调用,每次创建对象都会被调用,并且构造代码块的执行次序优先于类构造函数,执行顺序从上到下。
public class Demo { { System.out.println("构造代码块1"); } { System.out.println("构造代码块2"); } { System.out.println("构造代码块3"); } static { System.out.println("静态代码块1"); } static { System.out.println("静态代码块2"); } public Demo() { System.out.println("无参构造函数"); } public Demo(int i) { System.out.println("有参构造函数,参数为" + i); } public static void main(String[] args) { new Demo(); new Demo(10); { System.out.println("普通代码块1"); } { System.out.println("普通代码块2"); } } }
执行结果
静态代码块1 静态代码块2 构造代码块1 构造代码块2 构造代码块3 无参构造函数 构造代码块1 构造代码块2 构造代码块3 有参构造函数,参数为10 普通代码块1 普通代码块2
相关文章推荐
- 有关Struts2a的ction直接使用response异步问题
- Eclipse Java注释模板设置详解
- Spring类同名引起的ConflictingBeanDefinitionException异常
- Java双缓冲技术
- Java开发web的几种开发模式
- Servlet+JSP+JavaBean开发模式(MVC)介绍
- 更改maven使用的java版本(Mac)
- java线程研究---(5)暂停Thread:yield
- 如何用Spring将Service注入到Servlet中(注解模式)
- java简介
- hadoop 遇到java.net.ConnectException: to 0.0.0.0:10020 failed on connection
- eclipse中配置dtd和xsd文件实现自动提示
- Java数字时钟(现在是北京时间 20:13:14)
- java正则表达式捕获组
- eclipse相似代码方法快捷键
- Java 时间--Date,SimpleDateFormat,Calendar
- java static
- Eclipse快捷键 10个最有用的快捷键
- Spring学习笔记二(Bean注入的几种方式)
- eclipse导入外部maven工程后报the superclass.. was not found