java相关问题举例分析
发表于:2025-12-03 作者:千家信息网编辑
千家信息网最后更新 2025年12月03日,本篇内容主要讲解"java相关问题举例分析",感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习"java相关问题举例分析"吧!一、问题public class T
千家信息网最后更新 2025年12月03日java相关问题举例分析
本篇内容主要讲解"java相关问题举例分析",感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习"java相关问题举例分析"吧!
一、问题
public class Test{
public static Test t1 = new Test();//标记1
{
System.out.println("block A");//标记2
}
static{
System.out.println("block B");//标记3
}
public static void main(String[] args){
Test t2 = new Test();//标记4
}
}二、知识点
类的加载顺序
1.父类静态对象和静态代码块
2.子类静态对象和静态代码块
3.父类非静态对象和非静态构造代码块
4.父类构造函数
5.子类非静态对象和非静态构造到代码块
6.子类构造函数
7.普通代码块
8.上述加载顺序中,类中静态代码块按照声明顺序执行,并且1和2在类加载到方法区的时候执行,也就是不需要在调用new实例的时候就执行了。
三、答案解析
首先进入Test类,没有父类,那就执行自身的静态对象和代码块,并且按照声明顺序执行。所以首先执行标记1的静态对象,并且进行了实例化,所以需要调用相应的构造代码块,执行了标记2的语句,所以输出了block A;执行完毕后顺序执行静态代码块,也就是标记3的语句,所以输出了block B;继续执行静态的main方法,重新实例化Test对象,再次调用构造代码块,再次输出了标记2的语句,所以再次输出了block A;所以最终的结果为:
block A
block B
block A
不知道大家理解了没有呢?
学习三部曲,可以用javap -v 看一看编译后的class文件,这样对这个过程会更加清晰
还可以用idea的debug看一下 cinit , init 的区别
到此,相信大家对"java相关问题举例分析"有了更深的了解,不妨来实际操作一番吧!这里是网站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习!
静态
代码
标记
对象
顺序
问题
输出
分析
再次
子类
实例
方法
语句
学习
也就是
内容
函数
时候
实用
普通
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
北理工网络安全怎么样
网络安全专业课程计划
如何从数据库中提取仓库数据
软件开发强化目标措施
德惠通用网络技术经验丰富
hp 服务器 加显卡
软件开发校内见习总结
服务器数据库迁移方案
php for循环数据库
数据库查询分析的内容
数据库关系代数有没有必要
客户端连接两个服务器
网上书店设计步骤数据库
河南服务器电源种类
黄山市网络安全指挥中心
混沌与秩序额数据库
使命召唤18怎么连接不上服务器
华为t2000服务器密码
英图互联网科技有限公司
茂名卫星软件开发批发价格
张格网络安全
小鱼网络技术怎么样
数据库中数据长度计算
武汉优虎互联网科技有限公司
日本网络技术标准
上海网络安全审计
温州木木互联网科技有限公司
服务器如何发布网站
房山区智能网络技术常见问题
系统软件开发流程制度