掌握java中的三种代码块的定义及使用
来源:互联网 发布:mysql打开文件 编辑:程序博客网 时间:2024/05/21 00:17
代码块概念
代码块本身并不是一个很难理解的概念,实际上之前也一直在使用。所谓代码块是指使用“{}”括起来的一段代码,根据位置不同,代码块可以分为四种:普通代码块、构造块、静态代码块、同步代码块,其中同步代码块本书将在多线程部分进行讲解,本章先来观察其他三种代码块。
普通代码块
直接定义在方法中的代码块称为普通代码块。
public class CodeDemo01{
public static void main(String args[]){
{ // 普通代码块
int x = 30 ; // 就属于一个局部变量
System.out.println("普通代码块--> x = " + x) ;
}
int x = 100 ; // 与局部变量名称相同
System.out.println("代码块之外--> x = " + x) ;
}
};
运行结果:
C:\Documents and Settings\Administrator\桌面\java>java CodeDemo01
普通代码块 --> x = 30
代码块之外 --> x = 100
构造块:
将代码块直接定义在类中,则称为构造代码块。
class Demo{
{ // 直接在类中编写代码块,称为构造块
System.out.println("1、构造块。") ;
}
public Demo(){ // 定义构造方法
System.out.println("2、构造方法。") ;
}
};
public class CodeDemo02{
public static void main(String args[]){
new Demo() ; // 实例化对象
new Demo() ; // 实例化对象
new Demo() ; // 实例化对象
}
};
运行结果:
C:\Documents and Settings\Administrator\桌面\java>java CodeDemo02
1、构造块。
2、构造方法。
1、构造块。
2、构造方法。
1、构造块。
2、构造方法。
构造块优先于构造方法执行,且执行多次,只要一有实例化对象产生,就执行构造块中的内容。
静态代码块:
直接使用static关键字声明就称为静态代码块.
class Demo{
{ // 直接在类中编写代码块,称为构造块
System.out.println("1、构造块。") ;
}
static{ // 使用static,称为静态代码块
System.out.println("0、静态代码块") ;
}
public Demo(){ // 定义构造方法
System.out.println("2、构造方法。") ;
}
};
public class CodeDemo03{
static{ // 在主方法所在的类中定义静态块
System.out.println("在主方法所在类中定义的代码块") ;
}
public static void main(String args[]){
new Demo() ; // 实例化对象
new Demo() ; // 实例化对象
new Demo() ; // 实例化对象
}
};
运行结果:
C:\Documents and Settings\Administrator\桌面\java>java CodeDemo03
在主方法所在类中定义的代码块
0、静态代码块
1、构造块。
2、构造方法。
1、构造块。
2、构造方法。
1、构造块。
2、构造方法。
静态块优先于主方法执行,如果在普通类中定义的静态块,优先于构造块执行,不管不多少个实例化对象产生,静态代码块只执行一次,静态代码块的主要功能就是为静态发生初始化。
- 掌握java中的三种代码块的定义及使用
- 掌握java中的三种代码块的定义及使用
- 掌握java中的三种代码块的定义及使用
- 掌握java中的三种代码块的定义及使用
- Java中的三种代码块详解
- IOS中得block代码块的定义及使用
- iOS之Block代码块的定义及使用
- IOS中得block代码块的定义及使用
- IOS中得block代码块的定义及使用
- iOS中得block代码块的定义及使用
- IOS中得block代码块的定义及使用
- Java 三种代码块(静态代码块、普通代码块、构造代码块)的区别
- Java 关于继承中的static代码块,普通代码块及构造方法的执行顺序
- java中的代码块及优先级别
- Java学习之三种代码块优先使用顺序
- Java中的static静态代码块的使用
- Java中的static静态代码块的使用详解
- 静态代码块,构造代码块,普通代码块-三者的执行顺序及区别
- word2vec简介
- DOS
- 51-Intersection of Two Linked Lists
- babel5升级到babel6总结
- R语言︱机器学习模型评估方案(以随机森林算法为例)
- 掌握java中的三种代码块的定义及使用
- NDK开发入门篇
- 归并排序
- 【VS开发】关于各种View的实现总结
- JavaWeb学习笔记——JSP(2)
- 9.二进制中1的个数
- Spark组件之GraphX学习3--Structural Operators:subgraph
- apt-get install libboost-all-dev caffe
- 高仿口碑外卖