1000字范文,内容丰富有趣,学习的好帮手!
1000字范文 > 静态代码块 构造代码块 构造方法的执行顺序是什么

静态代码块 构造代码块 构造方法的执行顺序是什么

时间:2022-12-07 04:38:01

相关推荐

静态代码块 构造代码块 构造方法的执行顺序是什么

Java|Java基础

java,静态代码块,构造代码块,构造方法

Java-Java基础

微信点灯笼源码,Ubuntu硬盘无法挂载,tomcat双击运行闪退,爬虫致富视频,bp抓包没有php,印度seolzw

构造代码块、静态代码块与构造方法是类中三种不同的代码块,那么他们到底有什么区别呢?

qq免费挂件源码大全,ubuntu 8139d,tomcat用户名修改密码,scrapy管道爬虫,php国际贸易专业,怎样定位seolzw

A、三种代码块简介

12硬币源码,vscode 插件 c,adb ubuntu,tomcat自动重启,sqlite 支持,网页设计简单代码,orical数据库去除重复,iis服务器访问不了,新浪微博插件商业版 2.2.2,wp前端框架,今日头条爬虫,php iis,seo优化平台,语雀springboot,dedecms tag标签 有什么用,淘宝代码有那些网站,网页特效代码 鼠标,dede 美女图片站模板,企业网站后台内容如何修改,手机端错误页面设计,java简单教务管理系统,小程序商城源码下载lzw

静态代码块:用staitc声明,jvm加载类时执行,仅执行一次

构造代码块:类中直接用{}定义,每一次创建对象时执行。

执行顺序优先级:静态块,main(),构造块,构造方法。

class A{ //构造代码块 { System.out.println("构造代码块A"); } //静态代码块 static { System.out.println("静态代码块A"); } //构造方法 public A() { System.out.println("构造方法A"); }}

B、三者的执行顺序

为了弄清楚三者的执行顺序,我们对类 A 进行实例化,分别进行单个实例和多个实例的测试。

2.1 单个实例

class Demo{ public static void main(String[] args) { new A(); }}

2.2 多个实例

class Demo{ public static void main(String[] args) { new A(); new A(); new A(); }}

C、继承体系中的顺序

class B extends A{ //构造代码块 { System.out.println("构造代码块B"); } //静态代码块 static { System.out.println("静态代码块B"); } //构造方法 public B() { System.out.println("构造方法B"); }}class Demo{ public static void main(String[] args) { new B(); }}

D、总结

1、在创建一个对象的过程中,三者的执行顺序是:静态代码块 –> 构造代码块 –> 构造方法;

2、每创建一个对象,构造代码块和构造方法就会执行一次;而不管创建多少个对象,静态代码块仅仅只在创建第一个对象时执行一次;

3、创建子类对象时,子类的静态代码块在父类的静态代码块后面执行,但优先于父类的构造代码块和构造方法;

4、创建子类对象时,子类的构造代码块在父类的构造方法后执行。

相关视频教学推荐:Java视频教学

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。