代码块执行顺序
来源:互联网 发布:怎么改淘宝会员名手机 编辑:程序博客网 时间:2024/06/18 05:59
/* 代码块: 局部代码块: 放在方法中的代码块{} 构造代码块: 类中方法外的代码块{} -----------在构造方法前执行构造代码块 静态代码块:类中方法外的代码块static{} -----------静态代码块走一次,在类加载到内存后就执行 */public class Test1 { public static void main(String[] args) { //局部代码块,放在方法中的代码块 { int a = 1 ; } //============================================ Person p1 = new Person(); Person p2 = new Person(); Person p3 = new Person("aa"); /* ----输出 Person类的静态代码块 Person类的构造代码块 Person无参构造方法 Person类的构造代码块 Person无参构造方法 Person类的构造代码块 Person有参构造方法 */ }}class Person{ static{ System.out.println("Person类的静态代码块"); } //构造代码块,放在方法之外 //构造代码块(见以下反编译代码) //构造代码块的本质,复杂到每个构造方法第一行,在super下面 { System.out.println("Person类的构造代码块"); } public Person(){ System.out.println("Person无参构造方法"); } public Person(String name){ System.out.println("Person有参构造方法"); }}
反编译Person.class
package com.itheima.demo09975960014EE378015757548C678490204EE378015757;import java.io.PrintStream;class Person{ public Person() { System.out.println("我是 Person类的构造代码块"); System.out.println("Person 无参构造"); } public Person(String str) { System.out.println("我是 Person类的构造代码块"); System.out.println("Person 有参构造"); } static { System.out.println("我是Person类的静态代码块"); }}
继承下代码块的执行顺序
public class Test1 { public static void main(String[] args) { Student s1 = new Student(); Student s2 = new Student(); /* 输出: Person类的静态代码块 Student类的静态代码块 Person类的构造代码块 Person无参构造方法 Student类的构造代码块 Student无参构造方法 Person类的构造代码块 Person无参构造方法 Student类的构造代码块 Student无参构造方法 */ }}class Person { static { System.out.println("Person类的静态代码块"); } // 构造代码块,放在方法之外 { System.out.println("Person类的构造代码块"); } public Person() { System.out.println("Person无参构造方法"); } public Person(String name) { System.out.println("Person有参构造方法"); }}class Student extends Person { // 构造代码块,放在方法之外 { System.out.println("Student类的构造代码块"); } public Student() { System.out.println("Student无参构造方法"); } static { System.out.println("Student类的静态代码块"); }}
构造代码块默认放在构造方法下,super下一行
阅读全文
0 0
- 代码块执行顺序
- 代码块执行顺序
- 代码块执行顺序
- 静态代码块执行顺序
- Java代码块执行顺序
- Java代码块执行顺序
- Java代码块执行顺序
- 静态 代码块执行顺序
- java代码块执行顺序
- 代码块的执行顺序
- Java代码块执行顺序
- static 块以及代码块执行顺序
- 静态代码块,代码块,构造方法执行顺序
- 变量初始化,构造代码块,静态代码块,执行顺序
- java代码块及代码块的执行顺序
- java 静态代码块 代码块 构造函数执行顺序
- 静态代码块、构造代码块、构造方法执行顺序
- 静态代码块、代码块、构造执行顺序
- Docker 1分钟搭建DNS服务器
- 彻底解决中文乱码问题
- CUDA 数据分为大小两组
- py的基本语法 12.11
- Lock实现线程通信
- 代码块执行顺序
- 关于排序
- Java发展史
- Effective C++笔记(1)
- 比较全的参数绑定方式
- uno
- Effective C++笔记(2)
- MySQL 事务
- Safe-SettingActivity设置