`
wxlgzxx_1988
  • 浏览: 69133 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
社区版块
存档分类
最新评论

Java类初始化顺序学习笔记

阅读更多

一,单个类的初始化

     

     对于静态变量、静态初始化块、变量、初始化块、构造器,它们的初始化顺序依次是(静态变量、静态初始化块)>(变量、初始化块)>构造器

 

二,继承关系中的类的初始化

 

     在有继承关系的类中,其初始化顺序并不是父类完全初始化完毕后才进行子类的初始化,实际上子类的静态变量和静态初始化块的初始化是在父类的变量、初始化块和构造器初始化之前就完成了。

 

    

   注意:对于静态变量和静态初始化块之间、变量和初始化块之间的先后顺序,不一定静态变量总是先于静态初始化块,变量总是先于初始化块就被初始化,实际上这取决于它们在类中出现的先后顺序。静态变量和静态初始化块是依照他们在类中的定义顺序进行初始化的;同样,变量和初始化块也遵循这个规律。

 

分享到:
评论

相关推荐

    Java虚拟机JVM类加载学习笔记

    而当初始化顺序改变,先初始化静态变量再创建`singleton`实例时,`a`和`b`的值都变为1,这是因为静态变量的初始化发生在类加载后、类初始化前。 理解JVM的类加载机制对于优化程序性能、解决类加载问题以及深入学习...

    java基础学习笔记

    ### Java基础学习笔记知识点 #### 一、Java学习路线概览 Java学习通常分为几个阶段,从基础到高级,逐步深化。以下是对给定文件中提到的学习路线的详细解析: ##### 第一阶段:Java基础 - **JAVASE**:Java标准版...

    JAVA JDK6学习笔记

    Java JDK6学习笔记是针对Java编程语言初学者和进阶者的一份宝贵资源,它涵盖了Java的基础语法,并通过经典且易于理解的实例进行讲解。在本文中,我们将深入探讨Java JDK6中的关键概念和特性,以帮助你更好地理解和...

    深入Java虚拟机JVM类加载学习笔记

    ### 深入Java虚拟机JVM类加载学习笔记 #### 一、Classloader机制解析 在Java虚拟机(JVM)中,类加载器(ClassLoader)是负责将类的`.class`文件加载到内存中的重要组件。理解类加载器的工作原理对于深入掌握JVM以及...

    java学习笔记.pdf

    ### Java学习笔记知识点总结 #### 第一章:Java语言入门 - **1.1 Java的诞生** Java由Sun Microsystems公司于1995年推出的一种可移植、面向对象的编程语言。最初的设计目标是为消费电子产品提供一种通用编程语言...

    java实战经典学习笔记

    ### Java实战经典学习笔记知识点概览 #### 一、Java概述及开发环境搭建 - **Java概述** - Java是一种广泛使用的高级编程语言,由Sun Microsystems于1995年发布。 - Java的设计目标是“一次编写,到处运行”,这...

    JAVA项目学习笔记

    【JAVA项目学习笔记】 在Java开发中,尤其是在SpringMVC框架下,我们常常会遇到各种注解的使用,这些注解极大地简化了代码并优化了性能。以下是一些关键注解的详细解释: 1. **@Basic**: 这个注解用于指定实体属性...

    java学习笔记 java学习笔记

    Java学习笔记涵盖了许多核心概念,包括面向对象编程的各个方面。以下是对这些知识点的详细解析: 1. **继承中方法的重写**: 当子类重写父类的方法时,子类方法的访问权限必须至少等于或大于父类中对应方法的访问...

    java基础(超详细。。学习笔记) 公司内部资料!保密哦!!!

    本篇学习笔记将深入探讨Java的基础概念,主要包括初始化、数据类型、对象、变量类型、集合类、泛型、垃圾回收、方法重载与重写以及static关键字。 首先,初始化是程序执行的起点,涉及到变量的分配和设定初始值。在...

    Java学习笔记 经典必看

    ### Java学习笔记经典知识点解析 #### 一、面向对象编程基础 **面向对象**是一种重要的编程范式,它改变了传统的面向过程的编程思路,强调通过对象来组织代码,提高代码的复用性和维护性。 **面向对象的核心概念*...

    Java学习笔记(必看经典)

    Java中的方法重载(Overloading)是指在同一个类中可以有多个同名方法,但这些方法的参数列表必须不同(参数数量、类型或顺序)。而方法覆盖(Overriding)发生在子类中,子类可以重新定义父类中已有的非私有方法,...

    Java语言程序设计学习笔记

    Java语言程序设计学习笔记是为初学者和有一定基础的开发者准备的一份详尽教程,它涵盖了从基础到进阶的各个重要知识点。这份笔记以Markdown(md)文件的形式组织,便于阅读和检索,使得学习过程更为高效。 首先,...

    Java学习笔记 必看经典 pdf

    4. **构造方法**:构造方法用于初始化对象,没有返回值,其名称与类名相同。构造方法在创建对象时自动调用,用于设置初始状态。 #### 结论 Java的面向对象编程提供了强大的工具和概念,帮助开发者构建复杂而灵活的...

    java入门级学习笔记

    【Java入门级学习笔记】 Java是一种广泛使用的编程语言,尤其对于初学者来说,它具有简单性、面向对象、健壮性、安全性等显著特点。本笔记将深入浅出地介绍Java的学习路径,涵盖从环境配置到核心概念的全方位理解。...

    java之jvm学习笔记五(实践写自己的类装载器)

    这个“java之jvm学习笔记五(实践写自己的类装载器)”很可能是对这一主题的详细探讨。 类装载器在Java中的主要职责是动态加载类到JVM中。Java的类装载器分为三个基本层次:启动类装载器(Bootstrap ClassLoader)、...

    CoreJava学习笔记

    ### CoreJava学习笔记 #### 一、JAVA特点与运行原理 **JAVA特点:** 1. **简单性**:Java的设计者们将C++语言中许多不易理解和容易混淆的部分去除,使得Java更容易理解与掌握。 2. **面向对象**:Java几乎一切都...

    Java架构方面面试及学习笔记.rar

    这份"Java架构方面面试及学习笔记.rar"资源包含了广泛的Java后端技术,有助于加深对Java架构的理解和提升相关技能。 1. **Java后端知识**:Java作为服务器端开发的主流语言,其后端知识涵盖了类加载机制、垃圾回收...

    Java的高手学习笔记

    ### Java的高手学习笔记 #### 面向对象编程基础 **面向对象编程**是一种编程范式,它强调使用“对象”来设计软件。相比于传统的**面向过程编程**,面向对象编程更符合人类的认知习惯,并提供了更好的代码组织方式...

    java-servlet学习笔记

    在本篇学习笔记中,我们将深入探讨与Java Servlet相关的知识点,包括其工作原理、生命周期、配置以及实际应用。 首先,了解Servlet的工作原理至关重要。当一个HTTP请求到达服务器,Web容器(如Tomcat)会识别请求的...

    java学习笔记比较全面

    - 数组初始化时,可以一次性赋值,如 `int[] array = {1, 2, 3}`,也可以分步进行。 6. **运算符和逻辑** - 在表达式中,运算符的优先级会影响计算顺序。例如,乘法 `*` 的优先级高于赋值 `=`,所以 `b=b*2` 需要...

Global site tag (gtag.js) - Google Analytics