static关键字 1.static修饰的变量叫做“静态变量”。 2.static修饰的方法叫做“静态方法”。 3.static还可以定义静态语句块。 一下例子演示:static定义静态语句块static定义的静态语句块在类加载的阶段执行,并且只执行一次,并且是自上而下的顺序执行。 public class StaticTest01 {//静态语句块 static { System.out.pr
转载 2023-07-01 13:54:34
90阅读
定义在一个类中创建另外一个类,叫做成员内部类。用static关键字修饰,就是静态内部类;否则是非静态内部类。使用目的如果主方法代码对于Java文件,只是一个形式,Java文件本身并不需要这个方法,但是又必须具有(因为主方法是程序的入口)。 将主方法写到静态内部类中,从而不必为每个Java源文件,都设置一个类似的方法。使用限制在静态内部类中,才能够定义静态成员变量和静态成员方法。在静态内部类中,不
# Java Static 加载顺序解析 ## 流程图 ```mermaid flowchart TD A(开始) --> B(加载父类的静态变量和静态代码块) B --> C(加载子类的静态变量和静态代码块) C --> D(加载父类的实例变量和实例代码块) D --> E(调用父类的构造方法) E --> F(加载子类的实例变量和实例代码块)
原创 7月前
19阅读
# 如何实现“static java加载” ## 介绍 作为一名经验丰富的开发者,我将会向你介绍如何在Java中实现“static加载”。这个过程是非常重要的,因为static加载可以确保在类加载的过程中只会执行一次,避免重复加载。 ### 步骤概览 我们可以通过以下步骤来实现static加载: | 步骤 | 描述 | | --- | --- | | 1 | 创建一个类 | | 2
原创 6月前
21阅读
一. 类加载 & 类的加载一般认为static块是在『类加载』时期运行的。但翻博客看到有人认为这句话是错的,作为一个初学者一下子不知道哪个是正确的。花时间整理了一遍这部分内容。先说结论:这句话其实没什么问题,但很多人可能由于英文翻译导致的问题而产生误会。 这里的『类加载』其实指的是完整的『类加载』过程,而不是『类的加载』。当程序要使用某个类时,如果该类还未被加载到内存中,则系统会通过类的加
sratic修饰成员变量:静态成员变量,也叫类变量 static修饰成员方法:静态成员方法,也叫类方法(sratic修饰成员变量的总结)定义某个班级的学生的学生类,包含姓名、年龄、班级。class Student { public String name; public int age; public String classRoom = "Java学习"; pu
static表示“全局”或者“静态”的意思,用来修饰成员变量和成员方法,也可以形成静态static代码块,但是Java语言中没有全局变量的概念。被static修饰的成员变量和成员方法独立于该类的任何对象。也就是说,它不依赖类特定的实例,被类的所有实例共享。只要这个类被加载Java虚拟机就能根据类名在运行时数据区的方法区内定找到他们。因此,static对象可以在它的任何对象创建之前访问,无需引用任
一.类加载当jvm去运行一个类时,会先加载该类,把该类在硬盘上字节码加载到jvm的内存。java HelloWorld>字节码会被加载到代码段中>加载过程中会有一些静态的常量,这部分会事先存放到数据段中类加载static的关系 类加载会去初始化static修饰的变量 类加载会去执行静态的代码块类加载实际上由类加载加载,这个加载器是ClassLoader 二.static(
 问题一  : 类什么时候被加载/类加载时机???:有如下几个类,我先运行TestA,再运行TestB,那么:         class A:Java代码 1. public class A { 2. public static int a = 6; 3. }&
static的作用:1.将对象层级提升为类层级 (即将对象可以调用的,提升为对象和类均可调用的成员);            //推荐使用类来调用   ClassNme.静态成员 (包括变量、方法、成员对象)2.static修饰的成员,在类加载时即准备完成,而不需要创建对象;   //类加载只做一次
# 如何实现"Java static 加载map" ## 1. 流程概述 实现"Java static 加载map"的过程主要分为以下几个步骤: 1. 定义一个静态 Map 变量 2. 在静态代码块中初始化 Map 3. 提供静态方法获取 Map 下面将详细介绍每个步骤的具体操作。 ## 2. 步骤详解 ### 2.1 定义一个静态 Map 变量 在 Java 中,要使用静态 Map
staticJava中是一个很常见的关键字,同时它也是面试时的一个高频考点。那么在Java类中,static加载机制到底是怎样的呢?接下来就来带大家弄明白这个问题。一. 类加载机制JVM在首次使用某个类时,会通过 classpath 来查找该类的.class文件。然后将.class文件中对类的描述信息加载到内存中进行保存,如:包名、类名、父类、属性、方法、构造方法......一个类的加载过程大
staticJava中是一个很常见的关键字,同时它也是面试时的一个高频考点。那么在Java类中,static加载机制到底是怎样的呢?接下来百泽老师就来带大家弄明白这个问题。一. 类加载机制JVM在首次使用某个类时,会通过 classpath 来查找该类的.class文件。然后将.class文件中对类的描述信息加载到内存中进行保存,如:包名、类名、父类、属性、方法、构造方法......一个类的加
转载 2023-05-25 14:55:47
172阅读
# Java Static 加载与多次加载的理解 在Java中,静态变量和静态方法的加载过程可能会令人困惑,尤其对于刚入行的小白。本文将帮助你理解Java静态加载的机制,以及如何实现“java static 加载了多次”的行为。 ## 整体流程 在Java中,首先需要理解类的加载过程。Java的类加载可以分为以下几个步骤。下面是一个简单的流程表: | 步骤
原创 2月前
2阅读
## 实现 Java Static 方法懒加载 作为一名经验丰富的开发者,我们经常需要帮助新手解决一些常见的问题。其中,实现 Java Static 方法的懒加载可能是许多新手会遇到的一个难点。在本文中,我将向你展示如何实现这一功能,并帮助你理解整个实现过程。 首先,让我们看一下整个实现 Java Static 方法懒加载的流程: | 步骤 | 操作 | | ---- | ---- | |
# 实现“static Java加载顺序”的步骤 ## 1. 概述 在Java中,类的加载顺序对于程序的执行有着重要的影响。当一个类被加载时,其中的静态代码块会被执行。本文将介绍如何实现“static Java加载顺序”。 ## 2. 流程 下表展示了实现“static Java加载顺序”的流程: | 步骤 | 描述 | | --- | --- | | 1 | 创建一个包含静态成员的J
原创 5月前
21阅读
static表示“全局”或者“静态”的意思,用来修饰成员变量和成员方法,也可以形成静态static代码块,但是Java语言中没有全局变量的概念。 被static修饰的成员变量和成员方法独立于该类的任何对象。也就是说,它不依赖类特定的实例,被类的所有实例共享。只要这个类被加载Java虚拟机就能根据类名在运行时数据区的方法区内定找到他们。因此,st
转载 2023-06-21 23:52:39
76阅读
类从被加载到JVM中开始,到卸载为止,整个生命周期包括:加载、验证、准备、解析、初始化、使用和卸载七个阶段。 其中类加载过程包括加载、验证、准备、解析和初始化五个阶段。   类加载器的任务就是根据一个类的全限定名来读取此类的二进制字节流到JVM中,然后转换为一个与目标类对应的java.lang.Class对象实例。 BootstrapClassLoader、ExtClassLoad
1、static 关键字:可以用于修饰属性,也可以用于修饰方法,还可以用于修饰类。 2、static 修饰属性:无论一个类生成了多少个对象,所有这些对象共同使用唯一一份静态的成员变量;一个对象对该静态成员变量进行了修改,其他对象的该静态成员变量的值也会随之发生变化。如果一个成员变量是static 的,那么我们可以通过 类名 .成员变量名的方式来使用它 的方式来使用它 (推荐使用这种方式) 。 3、
一、权限修饰符1.1 四类权限修饰符public 公开的protected 受保护的private 私有的默认的(不写其它修饰符时);1、public修饰的成员变量,任何人都可以访问,都可以修改,可能导致不安全。2、private修饰的成员变量为私有属性,只有本身才能去操作相关的信息。1.2访问控制:当前类修饰的成员变量能否被其他不同类访问具体参考:权限修饰符:http://www.runoob.
  • 1
  • 2
  • 3
  • 4
  • 5