关于Java类中的代码块 普通代码块和初始化代码块
来源:互联网 发布:sql from() 编辑:程序博客网 时间:2024/06/07 05:02
在Java中存在代码块这一结构这一结构又主要分为普通代码块和初始化代码块两类。
一、普通代码块
普通代码块仅出现于方法中,起到分隔不同功能代码的作用,其运行顺序依据代码块出现的先后。
public static void main(String[] args){ { int x=3; System.out.println("1,普通代码块内的变量x="+x); } { int x=1; System.out.println("主方法内的变量x="+x); } { int y=7; System.out.println("2,普通代码块内的变量y="+y); } } }二、初始化代码块
初始化代码块分为静态初始化代码块和非静态初始化代码块两类。
初始化代码块出现于类的主体中,在类的声明中,可以包含多个初始化块,当创建类的实例时,就会依次执行这些代码块。如果使用 static 修饰初始化块,就称为静态初始化块。
这些初始化代码块起到了类的构造方法的作用,当无参实例化一个类的对象时,完全可以用代码块代替构造方法的位置。
非静态初始化块隐性运行于创建类的对象时,顺序依据代码块的先后排列,且这些代码块间可以存在其他方法。也就是说在实例化这个对象时,会从类的头到尾检索一遍来运行初始化代码块。
注意:
1.这些非静态代码块运行于类的初始化方法之前,且因为其没有名称,故只会在创建对象时隐性运行一次。
2.定义多个初始化代码块无意义。
现在再说静态初始化代码块,静态初始化代码块又被称为是“类初始化代码块”,因其早在系统将类初始化时就执行了,而不是在创建对象时执行。同时静态初始化块只能给静态变量赋值,不能初始化普通的成员变量。
而且要注意的是,系统在初始化类时,不仅会初始化该类中的静态初始化代码块,还回上溯到引用的包中的类的静态初始化代码块。
阅读全文
0 0
- 关于Java类中的代码块 普通代码块和初始化代码块
- java中的静态代码块、构造代码块、普通代码块和同步代码块总结
- java中的静态代码块、构造代码块、普通代码块和同步代码块总结
- java中的普通代码块、静态代码块、构造代码块和同步代码块
- 区分Java中的普通代码块、构造代码块和静态代码块
- Java静态代码块,构造代码块,普通代码块
- Java:普通代码块、构造代码块、静态代码块
- Java-普通代码块,构造代码块,静态代码块
- 普通代码块,静态代码块和构造代码块
- 普通代码块、静态代码块和构造代码块
- Java中父类与子类的普通代码块,构造代码块,静态代码块 初始化
- Java 中四种代码块:普通代码块、构造块、静态代码块、同步代码块。
- Java中的构造代码块、静态代码块、普通代码块的区别
- Java 关于继承中的static代码块,普通代码块及构造方法的执行顺序
- Java中普通代码块,构造代码块,静态代码块区别和优先级
- Java中static代码块、普通代码块和构造代码块的执行顺序
- 普通代码块 静态块 构造块
- java的代码块优先级 (静态代码块,构造代码块,普通代码块)
- LDAP报错:javax.naming.AuthenticationException: [LDAP: error codelid Credentials]
- python封装一个效率极高的 批量更新、插入合一的工具
- angular的修改,性别筛选
- oracle树查询(递归查询)
- IE8的兼容问题
- 关于Java类中的代码块 普通代码块和初始化代码块
- Unity3d-Json数据解析在登录注册本地存取的应用
- 二周第一次课 2017.10.23 相对和绝对路径、cd命令、创建和删除目录mkdir/rmdir、rm命令
- 51nod 1412 AVL树的种类
- codevs 1036 商务旅行 (lca)
- 2017_10_23-diff_trailing_cr
- LVS(二)
- setInterval
- 运行时间,常数,对数,指数,