java构造块_java中的静态代码块、构造代码块、构造方法详解

运行下面这段代码,观察其结果:

package com.test;

public class HelloB extends HelloA {

public HelloB() {

}

{

System.out.println("I'm B class");

}

static {

System.out.println("static B");

}

public static void main(String[] args) {

new HelloB();

}

}

class HelloA {

public HelloA() {

}

{

System.out.println("I'm A class");

}

static {

System.out.println("static A");

}

}

结果如下:

static A

static B

I'm A class

I'm B class

解析:

1.静态代码块:是在类的加载过程的第三步初始化的时候进行的,主要目的是给类变量赋予初始值。

2.构造代码块:是独立的,必须依附载体才能运行,Java会把构造代码块放到每种构造方法的前面,用于实例化一些共有的实例变量,减少代码量。

3.构造方法:用于实例化变量。

总结:

1是类级别的,2、3是实例级别的,所以1要优先2、3.

它们的执行顺序是1>2>3;

以上这篇java中的静态代码块、构造代码块、构造方法详解就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持脚本之家。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/257613.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

推荐一个不错的 Chrome 插件,百变皮肤,还可以去广告

今天在这里给大家推荐一个非常棒,非常不错的 Chrome 插件,功能实在是强大又好玩,让你在浏览器中可以如孙悟空一样72变,再不济,如果你不会用,不会自定义写 CSS 样式,也能够做到如猪八戒般 36 变。…

【转】DB2 常用命令

1、 打开命令行窗口   #db2cmd 2、 打开控制中心   # db2cmd db2cc 3、 打开命令编辑器  db2cmd db2ce 操作数据库命令 4、 启动数据库实例   #db2start 5、 停止数据库实例   #db2stop  如果你不能停止数据库由于激活的连接,在运行db2stop前执行db2 force ap…

c#调用R

R.NET使用文档 介绍 本页面涉及R.NET1.5.13。 1.5.13版本在功能上等同于1.5.12,但可作为一个包在NuGet.org上获得。 R.NET使.NET框架与R统计语言在同一进程进行互操作。 R.NET需要.NET Framework 4的并有R环境中安装的本地的DLL。您可以使用R.NET用在.NET的任何语言…

java applet 文本框_Java Applet 文本框 TextField 小例 | 学步园

一个Java Applet程序中必须有一个类是Applet类的子类,成为该子类是Java Applet的主类, 并且必须是public class。 Applet类是包java.applet中的一个类, 同时它还是包java.awt中Container(容器)类的子类。因此Java Applet的主类的实例是一个容…

python界面工具pyqt基础教程

这里有一份很详细的中文翻译供我们学习pyqt,很适合初学者和中级学者,直接丢传送门,不多说 http://www.qaulau.com/books/PyQt4_Tutorial/introduction.html转载于:https://www.cnblogs.com/semishigure/p/7451689.html

博客园客户端(睡睡版iphone)源码

1.关于 https://itunes.apple.com/us/app/shui-shui-bo-ke-yuan/id512394144?ls1&mt8 项目目前为V3.0版,也是我开发的最新版,目前已无法在appstore下载,项目介绍:http://www.cnblogs.com/bandy/p/3509482.html 2.现状 目前本…

Spring MVC不要在@Service bean中保存状态

先看这么一段代码: Service public class AccountService {private String message;public void foo1() {if (true) {this.message "a";} else {this.message "b";}}public void foo2() {// 改动this.message的代码...// ... ...} }假设你打算…

java class 关键字_java关键字及其作用

一、 关键字总览:访问控制privateprotectedpublic类,方法和变量修饰符abstractclassextendsfinalimplementsinterfacenativenewstaticstrictfpsynchronizedtransientvolatile程序控制breakcontinuereturndowhileifelseforinstanceofswitchcasedefault错误处理trycatchthrowthro…

3.过滤数据 ---SQL

一、使用WHERE子句 SELECT prod_name, prod_price FROM Products WHERE prod_price 3.49; 输出▼ prod_name prod_price ------------------- ---------- Fish bean bag toy 3.49 Bird bean bag toy 3.49 Rabbit bean bag toy 3.49 分析▼ 这条语句从products表中检索两个列&a…

IOS-C语言第8天,Struct (结构体)

转载于:https://www.cnblogs.com/xiangrongsu/p/4309160.html

Win2D 入门教程 VB 中文版 - 防止内存泄漏

避免内存泄漏 本文从微软官方文档翻译 http://microsoft.github.io/Win2D/html/RefCycles.htm 如果文档有问题,可以在 https://github.com/Nukepayload2/Win2dDocVB发 Issue,也可以直接回复。 当在托管的 XAML 应用程序中使用 Win2D 控件,需要…

java concurrent 锁_java并发机制锁的类型和实现

synchronized 和 volatile,是最基础的两个锁!volatile是轻量级锁,它在多核处理器开发中保证了共享变量的可见性。即当一个线程修改一个共享变量时,其他线程能够读到这个修改的值。它比syncronized使用和成本更低。要说volatile的实…

JAXB和XStream比较

这两东东本质上是有差别的,JAXB称为OX binding工具,XStream应该算序列化工具,但OX binding工具也会marshall和unmarshall,所以包含了序列化这一部分。序列化工具不一定需要提供binding的功能。既然都玩序列化,那就简单…

【起航计划 011】2015 起航计划 Android APIDemo的魔鬼步伐 10 App-Activity-Reorder Activities 后退栈 Intent FLAG...

Reorder Activities 示例有四个相关的Activitives: ReorderOnLaunch, ReorderTwo,ReorderThree, ReorderFour。其中ReorderOnLaunch为主Activity,ReorderOnLaunch启动ReorderTwo ,ReorderTwo启动 ReorderThree,ReorderThree启动 ReorderFour。…

java date dateformat_java中Date与DateFormat的格式输出

一、DateFormatjava.text.DateFormat使用 getDateInstance 来获取该国家/地区的标准日期格式。另外还提供了一些其他静态工厂方法。使用 getTimeInstance 可获取该国家/地区的时间格式。使用 getDateTimeInstance 可获取日期和时间格式。可以将不同选项传入这些工厂方法&#x…

spartan6不能直接把时钟连到IO上

1、问题的提出:spartan6中不允许时钟信号直接连到IO口上面? 2、解决办法:ODDR2的使用 ODDR2Primitive: Double Data Rate Output D Flip-Flop with Optional Data Alignment, Clock Enable and Programmable Synchronous or Asynchronous Set…

STL容器及适配器

STL容器 1.序列式容器 : vector,deque,list。 每个元素都有固定的位置(取决于插入的时机和位置,与元素值无关)。 vector 特点: 将一个元素置于一个动态数组中加以管理,可以随机存取元…

Html5 Canvas斗地主游戏

过完年来公司,没什么事,主管说研究下html5 游戏,然后主管就给了一个斗地主的demo,随后我就开始看代码, 现在我看了html5以及canvas相关知识和斗地主的demo后,自己用demo上的素材试着写了个斗地主&#xff0…

java流的传递方式是_如何在方法中流式传输Java List(Varargs)的值?

我有以下方法:public static List getValuesExclusion(A exclusion) {return Arrays.stream(values()).filter(item -> item ! exclusion).collect(Collectors.toList());}//this function returns enum list of A types that has no A typeexclusion现在我想将它…

JAVA作业——JAVA课程的总结及学习计划

JAVA作业——JAVA课程的总结及学习计划 NO.1 总结 在上一年的学习中,对JAVA语言比较陌生,英语基础不好,so学习起来有点困难,对JAVA的一些语法和编程记得比较少。 NO.2 计划 对过去一年的认真反思之后,我的计划如下&…