Java 代码块详解
文章目录
- Java 代码块详解
- 基本介绍
- 基本语法
- 代码块示例
- 代码块使用细节
Java 代码块详解
基本介绍
代码块
又称 初始化块, 是类的一部分,属于类中的成员,类似于方法,将逻辑语句封装在方法体中,通过 {} 封装起来。
但是代码块
没有方法名,没有返回,没有参数, 只有方法体,而且不用通过对象或类显示调用,而是加载类的时候,或创建对象的时候隐式调用。
基本语法
- 修饰符可选,并且修饰符只能为 static 。
- 代码块分为两类,用 static 修饰的为静态代码块,没有 static 修饰的为普通代码块。
- 代码块中可以写任何语句(输入,输出,方法调用,循环,判断等等)。
- ; 可以省略。
代码块示例
student类
public class Student {private int id;private String name;private int age;{System.out.println("代码块被执行~~");}public Student(int id, String name, int age) {System.out.println("构造器被调用~~~");this.id = id;this.name = name;this.age = age;}
}
BlockCodeTest类
public class BlockCodeTest {// 代码块调用的顺序优先于构造器public static void main(String[] args) {Student s = new Student(1, "王昭君", 18);}
}
运行结果:
通过运行结果我们发现,代码块调用的顺序优先于构造器的,所以,代码块
相当于另外一种形式的构造器,可以作为构造器的补充机制,做初始化的操作。
代码块使用细节
1. static代码块也叫静态代码块,作用就是对类进行初始化,它随类加载而执行,并且只会执行一次。如果是普通代码块(非静态代码块),每创建一个对象执行一次。
Java 代码块详解相关推荐
- Java—代码块详解
代码块概念 代码块分类 普通代码块 构造代码块 静态代码块 同步代码块 代码块概念 在java中,{ } 括起来的代码被称为代码块 代码块分类 普通代码块 类中方法的方法体 public class ...
- java代码讲解_Java基础系列-代码块详解
注:本文出自博主 Chloneda:个人博客 | 博客园 | Github | Gitee | 知乎 前言 Java基础系列,尽量采用通俗易懂.循序渐进的方式,让大家真正理解Java基础知识! 代码块 ...
- Java基础篇:四种代码块详解
所谓代码块,就是用大括号{}将多行代码封装在一起,形成一个独立的数据体,用于实现特定的算法.一般来说,代码块是不能单独运行的,它必须有运行主体.在Java中代码块主要分为四种:普通代码块.静态代码块. ...
- java中静态代码块详解
参考博客:https://blog.csdn.net/qq_36792191/article/details/103988565 1.静态代码块基本知识 **(1)静态代码块:**执行优先级高于非静态 ...
- Java 静态代码块详解
文章目录 一.普通初始化块: 二.静态代码块: 三.多种代码块间的执行顺序 首先得知道什么是初始化块:就是类中得一段用大括号 {} 括起来得独立的代码空间. 而初始化块分成了 普通初始化块和 静态的初 ...
- 12-Java 继承抽象类代码块(详解~)
文章目录 1. 继承 1.1 继承的实现(掌握) 1.2 继承的好处和弊端(理解) 1.3. Java中继承的特点(掌握) 2. 继承中的成员访问特点 2.1 继承中变量的访问特点(掌握) 2.2 s ...
- 多线程与同步代码块详解
线程是程序执行的一条路径, 一个进程中可以包含多条线程.多线程并发执行可以提高程序的效率,可以同时完成多项工作,多线程并发执行的实质就是CPU在做着高速的切换.多线程的应用场景:红蜘蛛同时共享屏幕给多 ...
- elasticsearch的java代码操作详解
Java操作es集群步骤 1:配置集群对象信息:2:创建客户端:3:查看集群信息 1:集群名称 默认集群名为elasticsearch,如果集群名称和指定的不一致则在使用节点资源时会报错. 2:嗅探功 ...
- java程序n体问题_2n皇后问题 (Java代码)详解
解题思路:先放白皇后再放黑皇后,用for循环一行放一个,逐个位置试一下,检查一下是否能放,知道把最后一个黑皇后放好就count++,回溯法的关键在于,检查这个位置能放皇后,开始放一个(调用函数),在下 ...
最新文章
- 阿里老员工论坛炫耀:每年税前260万,还有三千万期权在握
- 20145233《Java程序设计》课程总结
- mysql events_mysql定时器Events
- python pycharm 增量选择 ctrl+w
- c语言快速排序案例,什么是快速排序?C语言数组快速排序例子
- ubuntu编译qemu报错:‘ERROR: DTC (libfdt) version = 1.4.0 not present.’
- java 的类和接口的变量调用
- Linux服务跟随启动,Linux—添加开机启动(服务/脚本)
- 你的气质里藏着 英文_寓意满满的小众英文名,高格调、高颜值,挑一个喜欢的吧...
- 计算机网络实验二抓包协议分析,计算机网络实验-使用Wireshark分析TCP和UDP协议...
- overflow+文档流
- php 获取季度起始日期,php获取昨天、今天、上周、本周、上月、本月、上季度、本季度、今年的起始时间...
- Linq-Order By操作
- Linux下服务器搭建(5)——CentOS下Redis的安装
- java3d翻转纪念相册_HTML5 3D旋转相册的实现示例
- Xcode开发技巧——调试
- 结对项目:电梯调度算法的实现和测试
- X.509证书编码及解析
- 如何把多个文件夹里的文件提取出来?
- python如何编写温度转换_用python写温度转换