java 浅析代码块的由来及用法
1.概述
代码块也是属于类中的成员(即是类的一部分),类似于方法,将逻辑语句封装在方法体中,通过{}包围起来。在类加载时或创建对象时隐式调用。
下面为主要代码块的格式与详细解析概述:
2.主要应用顺序:
分析应用场景:当所在的类中的需要进行一些必要的操作时,可以通过放在代码块来进行,而不用通过给每个构造器放入相同的语句,会显得比较多余。
应用顺序:无论创建对象时,都会优先调用代码块中的内容。这里当你运用代码块时,是需要将调用构造器时候会自动先调用代码块。
3.代码块的注意事项和细节议论
静态代码块:
static代码块也叫静态代码块,作用是对类的进行初始化,并且随着类的加载而执行,且只执行一次.(普通的代码块,会每创建一个对象就会执行一次)。
图片详细说明:
代码块主要细节事项:
其中:普通的代码块只会在创建对象时候才会被调用,而且每创建一次就要调用一次。类加载时则不会执行。
最重要的就是一个类里面的静态代码块,静态属性初始化的优先级是一样的,如果有多个时,则按定义额顺序调用。还有普通代码块和普通属性初始化则也是如此。静态会优先于普通,最后再是构造器。
主要是讲的在一个类中的构造器中会优先访问父类的构造器,然后再访问本类的普通代码块,最后再执行构造器的代码。
主要是对于创建一个子类对象时候,所调用的顺序。
主要是讲的在静态代码块中只能调用静态的成员(静态属性与静态方法),普通代码块可以调用静态和非静态的。
到此这篇关于java 浅析代码块的由来及用法的文章就介绍到这了,更多相关Java 代码块内容请搜索我们以前的文章或继续浏览下面的相关文章希望大家以后多多支持我们!
相关推荐
-
Java编程中的4种代码块详解
在Java编程中,代码块就是指用"{}"括起来的代码.下面看一下这四种代码块. 1.普通代码块 就是指类中方法的方法体. public void xxx(){ //code } 2.构造块 下面用"{}"括起来的代码片段,构造块在创建对象时会被调用,每次创建对象时都会被调用,并且优先于类构造函数(包括有参和无参的)执行. 构造块中定义的变量是局部变量. public class Client { {//构造代码块 System.out.println("执
-
Java杂谈之类和对象 封装 构造方法以及代码块详解
目录 1. 类和对象的初步认知 2. 类的实例化 3. 类的成员 字段(属性/成员变量) 方法 static 关键字 修饰字段 修饰方法 修饰代码块(暂不讲) 修饰类(暂不讲) 4. 封装 5. 构造方法 6. this 用法 关于引用的几个注意事项: 7. 代码块 Java当中的类和对象 1. 类和对象的初步认知 java 是一门面向对象的语言,所谓面向对象有别于面向过程,面向对象是只需对象之间的交互即可完成任务,但是面向过程的话,需要我们将每一个步骤都详细地做出来.比如,以洗衣服为例,如果是
-
JAVA代码块你了解吗
目录 非静态代码块:没有static修饰的代码块 静态代码块:用static修饰的代码块 用处 总结 非静态代码块:没有static修饰的代码块 可以有输出语句 可以对类的属性声明进行初始化操作 可以调用静态或者非静态的变量或方法 若有多个非静态的代码块,那么按照从上到下的顺序依次执行 再次创建对象的时候都会执行,且先于构造函数执行 代码: public class Per { { System.out.println("非静态代码块1"); } { System.out.printl
-
Java静态代码块作用及执行顺序解析
一般情况下,如果有些代码必须在项目启动的时候就执行,需要使用静态代码块.这种代码是主动执行的,需要在项目启动的时候就初始化. 有些代码是在不创建对象的情况下,由其他程序来调用,需要使用静态方法.这种代码是被动执行的. 静态方法在类加载的时候就已经加载,可以用类名直接调用 比如main方法就必须是静态的 这是程序入口 两者的区别就是:静态代码块是自动执行的,而静态方法是被调用的时候才执行的. 区别很简单: 静态代码块,在虚拟机加载类的时候就会加载执行,而且只执行一次: 非静态代码块,在创建对象的时
-
Java构造代码块,静态代码块原理与用法实例分析
本文实例讲述了Java构造代码块,静态代码块原理与用法.分享给大家供大家参考,具体如下: 本文内容: 局部代码块 构造代码块 静态代码块 补充 首发日期:2018-03-28 局部代码块: 局部代码块用于限制变量的生命周期,如果希望某些变量在某一过程之后直接失效而不希望被后面继续操作时,可以使用局部变量来限制变量的生命周期带局部代码块中 构造代码块: 构造函数只对对应的对象进行初始化,构造代码块给类的所有对象进行初始化. 由于构造代码块给类的所有对象进行初始化,所以对于每个对象都要初始化成一样值
-
java 浅析代码块的由来及用法
1.概述 代码块也是属于类中的成员(即是类的一部分),类似于方法,将逻辑语句封装在方法体中,通过{}包围起来.在类加载时或创建对象时隐式调用. 下面为主要代码块的格式与详细解析概述: 2.主要应用顺序: 分析应用场景:当所在的类中的需要进行一些必要的操作时,可以通过放在代码块来进行,而不用通过给每个构造器放入相同的语句,会显得比较多余. 应用顺序:无论创建对象时,都会优先调用代码块中的内容.这里当你运用代码块时,是需要将调用构造器时候会自动先调用代码块. 3.代码块的注意事项和细节议论
-
Java浅析代码块与构造块及静态块三者之间的关系
目录 普通代码块(本地代码块) 构造块(实例代码块) 静态块(静态代码块) 他们之间有什么关系呢 例子 分析 普通代码块(本地代码块) 定义在方法里面用{ }括起来的代码块(凡是用{ }括起来都叫代码块,只是没有细分),就是普通代码块,也叫本地代码块.(不多见,也不常用) 例如: public class Test { public static void main(String[] args){ { System.out.println("本地代码块!"); } } } 构造块(实例
-
Java 普通代码块静态代码块执行顺序(实例讲解)
如下所示: class B { public B() { super(); System.out.println("构造器B"); } { System.out.println("普通的代码块B"); } static{ System.out.println("静态代码块B"); } } public class ClassA extends B { public ClassA() { super(); System.out.println(&q
-
Java同步代码块解决银行取钱的安全问题实例分析
本文实例讲述了Java同步代码块解决银行取钱的安全问题.分享给大家供大家参考,具体如下: 一 点睛 为了解决类似银行取钱这类安全问题,Java的多线程支持引入了同步监视器来解决这个问题,使用同步监视器的通用方法是同步代码块.同步代码块的语法格式是: synchronized(obj) { //此处代码块就是同步代码块. } 上面语法格式中种的obj就是同步监视器,上面代码的含义是:线程开始执行同步代码块之前,必须先获得对同步监视器的锁定. 任何时刻只能由一个线程获得对同步监视器的锁定,当同步代码
-
Java同步代码块和同步方法原理与应用案例详解
本文实例讲述了Java同步代码块和同步方法.分享给大家供大家参考,具体如下: 一 点睛 所谓原子性:一段代码要么执行,要么不执行,不存在执行一部分被中断的情况.言外之意是这段代码就像原子一样,不可拆分. 同步的含义:多线程在代码执行的关键点上,互通消息,相互协作,共同把任务正确的完成. 同步代码块语法: synchronized(对象) { 需要同步的代码块; } 同步方法语法: 访问控制符 synchronized 返回值类型方法名称(参数) { 需要同步的代码; } 二 同步代码块完成卖票功
-
java 面向对象代码块及不同位置对属性赋值的执行顺序
目录 代码块 对属性可以赋值的位置 不同位置对属性赋值的执行顺序 结语 前言: java中的代码块介绍以及一个类中不同位置对属性赋值的执行顺序. 代码块 1.代码块的作用:用来初始化类.对象 2.代码块如果有修饰的话,只能使用 static 3.分类:静态代码块 VS 非静态代码块 4.静态代码块 内部可以有输出语句. 随着类的加载而执行,而且只执行一次. 作用:初始化类的信息. 如果一个类中定义了多个静态代码块,则按照声明的先后顺序执行. 静态代码块的执行要优先于非静态代码块的执行. 静态代码
-
举例说明Java中代码块的执行顺序
前言 今天在看Android ContentProvider实现的时候,突然想到了Java类在new的过程中,静态域.静态块.非静态域.非静态块.构造函数的执行顺序问题.其实这是一个很经典的问题,非常考察对Java基础知识的掌握程度.很多面试过程中相信也有这样的问题,趁着周末有时间复习一下. 结论 这里先把整理好的结论抛给大家,然后我在写个程序来验证我们的结论.在Java类被new的过程中,执行顺序如下: 实现自身的静态属性和静态代码块.(根据代码出现的顺序决定谁先执行) 实现自
-
Java静态代码块加载驱动代码实例
Demo1.funx(); String s=Demo1.string; 静态代码块 会在new一个该类对象时调用 或者调用该类的静态方法,静态成员变量时调用 总之在类加载器将该类加载到内存中时 (无论是通过哪种方式) 都会调用静态代码块 静态成员变量 静态代码块永远只被初始化一次 无论new多少个对象 加载类时 初始化顺序 静态成员->静态代码块 ->变量,初始化块->构造函数 由于静态代码块永远只被加载一次的特性 常被用来加载配置文件 等初始化操作(单例模式) 例子 static {
随机推荐
- 详解基于Angular4+ server render(服务端渲染)开发教程
- vue-cli构建项目使用 less的方法
- 学习Ruby你需要了解的相关知识(rvm, gem, bundle, rake, rails等)
- java开发就业信息管理系统
- 详解Angular4 路由设置相关
- js将json格式的对象拼接成复杂的url参数方法
- 10道典型的JavaScript面试题
- Apache中.htaccess文件功能
- 护卫神 主机管理系统使用说明(MSSQL管理)
- JavaScript实现自动变换表格边框颜色
- thinkPHP实现的联动菜单功能详解
- Python random模块(获取随机数)常用方法和使用例子
- linux下python抓屏实现方法
- 不通过JavaScript实现的自动滚动视差效果
- 被遗忘的javascript的slice() 方法
- jQuery使用hide方法隐藏指定元素class样式用法实例
- linux操作系统安装MONO执行C#程序的详解步骤
- Android 单例模式 Singleton 简单实例设计模式解析
- Android中解决EditText放到popupWindow中,原有复制、粘贴、全选、选择功能失效问题
- python tools实现视频的每一帧提取并保存