Java虚拟机把描述类的数据从Class文件加载到内存,并对数据进行校验、转换解析和初始化,最终形成可以被虚拟机直接使用的Java类型,这个过程被称作虚拟机的类加载机制。

类加载时机

一个类型从被加载到虚拟机内存中开始,到卸载出内存为止,它的整个生命周期将会经历加载(Loading)、验证(Verification)、准备(Preparation)、解析(Resolution)、初始化(Initialization)、使用(Using)和卸载(Unloading)七个阶段,其中验证、准备、解析三个部分统称为连接(Linking)。这七个阶段的发生顺序如图所示。

 

加载、验证、准备、初始化和卸载这五个阶段的顺序是确定的,类型的加载过程必须按照这种顺序按部就班地开始,而解析阶段则不一定:它在某些情况下可以在初始化阶段之后再开始,这是为了支持Java语言的运行时绑定特性(也称为动态绑定或晚期绑定)。

类加载的过程

加载

在加载阶段,Java虚拟机需要完成以下三件事情

  1. 通过一个类的全限定名来获取定义此类的二进制字节流。(如何获取不限定,可以是网络获取,磁盘读取、动态生成等)

  2. 将这个字节流所代表的静态存储结构转化为方法区的运行时数据结构。

  3. 在内存中生成一个代表这个类的java.lang.Class对象,作为方法区这个类的各种数据的访问入口。

相对于类加载过程的其他阶段,非数组类型的加载阶段(准确地说,是加载阶段中获取类的二进制字节流的动作)是开发人员可控性最强的阶段。加载阶段既可以使用Java虚拟机里内置的引导类加载器来完成,也可以由用户自定义的类加载器去完成,开发人员通过定义自己的类加载器去控制字节流的获取方式(重写一个类加载器的findClass()或loadClass()方法),实现根据自己的想法来赋予应用程序获取运行代码的动态性。

连接

连接包括验证(Verification)、准备(Preparation)、解析(Resolution)三个阶段。

验证

验证是连接阶段的第一步,这一阶段的目的是确保Class文件的字节流中包含的信息符合《Java虚拟机规范》的全部约束要求,保证这些信息被当作代码运行后不会危害虚拟机自身的安全。

Java语言本身是相对安全的编程语言(起码对于C/C++来说是相对安全的),使用纯粹的Java代码无法做到诸如访问数组边界以外的数据、将一个对象转型为它并未实现的类型、跳转到不存在的代码行之类的事情,如果尝试这样去做了,编译器会毫不留情地抛出异常、拒绝编译。但Class文件并不一定只能由Java源码编译而来,它可以使用包括靠键盘0和1直接在二进制编辑器中敲出Class文件在内的任何途径产生。上述Java代码无法做到的事情在字节码层面上都是可以实现的,至少语义上是可以表达出来的。Java虚拟机如果不检查输入的字节流,对其完全信任的话,很可能会因为载入了有错误或有恶意企图的字节码流而导致整个系统受攻击甚至崩溃,所以验证字节码是Java虚拟机保护自身的一项必要措施。

验证阶段大致上会完成下面四个阶段的检验动作:

  • 文件格式验证

  • 元数据验证

  • 字节码验证

  • 符号引用验证

准备

准备阶段是正式为类中定义的变量(即静态变量,被static修饰的变量)分配内存并设置类变量初始值的阶段,从概念上讲,这些变量所使用的内存都应当在方法区中进行分配,但必须注意到方法区本身是一个逻辑上的区域,在JDK7及之前,HotSpot使用永久代来实现方法区时,实现是完全符合这种逻辑概念的;而在JDK8及之后,类变量则会随着Class对象一起存放在Java堆中,这时候“类变量在方法区”就完全是一种对逻辑概念的表述了。

关于准备阶段,还有两个容易产生混淆的概念笔者需要着重强调,首先是这时候进行内存分配的仅包括类变量,而不包括实例变量,实例变量将会在对象实例化时随着对象一起分配在Java堆中。其次是这里所说的初始值“通常情况”下是数据类型的零值,假设一个类变量的定义为:

public static int value=123;

那变量value在准备阶段过后的初始值为0而不是123,因为这时尚未开始执行任何Java方法,而把value赋值为123的putstatic指令是程序被编译后,存放于类构造器<clinit>()方法之中,所以把value赋值为123的动作要到类的初始化阶段才会被执行。如果上述代码用final修饰,那么在准备阶段过后初始值为123(此时这个值会放在方法区的运行时常量池中)。注意,如果是局部变量,因为不存在准备阶段,在定义后必须显式初始化,否则不能通过编译。

解析

解析阶段是Java虚拟机将常量池内的符号引用替换为直接引用的过程。

  • 符号引用(Symbolic References):符号引用以一组符号来描述所引用的目标,符号可以是任何形式的字面量,只要使用时能无歧义地定位到目标即可。符号引用与虚拟机实现的内存布局无关,引用的目标并不一定是已经加载到虚拟机内存当中的内容。各种虚拟机实现的内存布局可以各不相同,但是它们能接受的符号引用必须都是一致的,因为符号引用的字面量形式明确定义在《Java虚拟机规范》的Class文件格式中。

    例如将下面的代码用javap反汇编得到字节码指令

    public class TestClzz {private static final int fInt = 99;
    ​private static double sDouble = 8;
    ​private float aFloat = 77;
    ​public static void main(String[] args) {
    ​}
    ​public static String getMSg() {return "你好";}
    ​private boolean isTrue() {return false;}
    }

    执行

    javap -verbose .\TestClzz.class

    得到

    Classfile /D:/javaproject/myexampleproject/MyWallet/target/classes/com/kmning/wallet/jvm/TestClzz.classLast modified 2022年1月25日; size 760 bytesSHA-256 checksum 2a0a77f9a1d83a89dbd3c1f1c0a36081b607cd32f835f3a8f08773299ed13d93Compiled from "TestClzz.java"                                                    
    public class com.kmning.wallet.jvm.TestClzzminor version: 0major version: 52flags: (0x0021) ACC_PUBLIC, ACC_SUPERthis_class: #8                          // com/kmning/wallet/jvm/TestClzzsuper_class: #9                         // java/lang/Objectinterfaces: 0, fields: 3, methods: 5, attributes: 1
    Constant pool:#1 = Methodref          #9.#36         // java/lang/Object."<init>":()V#2 = Float              77.0f#3 = Fieldref           #8.#37         // com/kmning/wallet/jvm/TestClzz.aFloat:F#4 = String             #38            // 你好#5 = Double             8.0d#7 = Fieldref           #8.#39         // com/kmning/wallet/jvm/TestClzz.sDouble:D#8 = Class              #40            // com/kmning/wallet/jvm/TestClzz#9 = Class              #41            // java/lang/Object#10 = Utf8               fInt#11 = Utf8               I#12 = Utf8               ConstantValue#13 = Integer            99#14 = Utf8               sDouble#15 = Utf8               D#16 = Utf8               aFloat#17 = Utf8               F#18 = Utf8               <init>#19 = Utf8               ()V#20 = Utf8               Code#21 = Utf8               LineNumberTable#22 = Utf8               LocalVariableTable#23 = Utf8               this#24 = Utf8               Lcom/kmning/wallet/jvm/TestClzz;#25 = Utf8               main#26 = Utf8               ([Ljava/lang/String;)V#27 = Utf8               args#28 = Utf8               [Ljava/lang/String;#29 = Utf8               getMSg#30 = Utf8               ()Ljava/lang/String;#31 = Utf8               isTrue#32 = Utf8               ()Z#33 = Utf8               <clinit>#34 = Utf8               SourceFile#35 = Utf8               TestClzz.java#36 = NameAndType        #18:#19        // "<init>":()V#37 = NameAndType        #16:#17        // aFloat:F#38 = Utf8               你好#39 = NameAndType        #14:#15        // sDouble:D#40 = Utf8               com/kmning/wallet/jvm/TestClzz#41 = Utf8               java/lang/Object
    {public com.kmning.wallet.jvm.TestClzz();descriptor: ()Vflags: (0x0001) ACC_PUBLICCode:stack=2, locals=1, args_size=10: aload_01: invokespecial #1                  // Method java/lang/Object."<init>":()V4: aload_05: ldc           #2                  // float 77.0f7: putfield      #3                  // Field aFloat:F10: returnLineNumberTable:line 8: 0line 13: 4LocalVariableTable:Start  Length  Slot  Name   Signature0      11     0  this   Lcom/kmning/wallet/jvm/TestClzz;
    ​public static void main(java.lang.String[]);descriptor: ([Ljava/lang/String;)Vflags: (0x0009) ACC_PUBLIC, ACC_STATICCode:stack=0, locals=1, args_size=10: returnLineNumberTable:line 17: 0LocalVariableTable:Start  Length  Slot  Name   Signature0       1     0  args   [Ljava/lang/String;
    ​public static java.lang.String getMSg();descriptor: ()Ljava/lang/String;Code:stack=2, locals=0, args_size=00: ldc2_w        #5                  // double 8.0d3: putstatic     #7                  // Field sDouble:D6: returnLineNumberTable:line 11: 0
    }
    SourceFile: "TestClzz.java"

    上面常量池中一堆的带有"Utf8"的就是符号引用。

  • 直接引用(Direct References):直接引用是可以直接指向目标的指针、相对偏移量或者是一个能间接定位到目标的句柄。直接引用是和虚拟机实现的内存布局直接相关的,同一个符号引用在不同虚拟机实例上翻译出来的直接引用一般不会相同。如果有了直接引用,那引用的目标必定已经在虚拟机的内存中存在。

解析动作主要针对类或接口、字段、类方法、接口方法、方法类型、方法句柄和调用点限定符这7类符号引用进行,分别对应于常量池的CONSTANT_Class_info、CON-STANT_Fieldref_info、CONSTANT_Methodref_info、CONSTANT_InterfaceMethodref_info、CONSTANT_MethodType_info、CONSTANT_MethodHandle_info、CONSTANT_Dyna-mic_info和CONSTANT_InvokeDynamic_info8种常量类型。

初始化

类的初始化阶段是类加载过程的最后一个步骤,之前介绍的几个类加载的动作里,除了在加载阶段用户应用程序可以通过自定义类加载器的方式局部参与外,其余动作都完全由Java虚拟机来主导控制。直到初始化阶段,Java虚拟机才真正开始执行类中编写的Java程序代码,将主导权移交给应用程序。

进行准备阶段时,变量已经赋过一次系统要求的初始零值,而在初始化阶段,则会根据程序员通过程序编码制定的主观计划去初始化类变量和其他资源。我们也可以从另外一种更直接的形式来表达:初始化阶段就是执行类构造器<clinit>()方法的过程。<clinit>()并不是程序员在Java代码中直接编写的方法,它是Javac编译器的自动生成物。

  • <clinit>()方法是由编译器自动收集类中的所有类变量的赋值动作和静态语句块(static{}块)中的语句合并产生的,编译器收集的顺序是由语句在源文件中出现的顺序决定的,静态语句块中只能访问到定义在静态语句块之前的变量,定义在它之后的变量,在前面的静态语句块可以赋值,但是不能访问。

  • <clinit>()方法与类的构造函数(即在虚拟机视角中的实例构造器<init>()方法)不同,它不需要显式地调用父类构造器,Java虚拟机会保证在子类的<clinit>()方法执行前,父类的<clinit>()方法已经执行完毕。因此在Java虚拟机中第一个被执行的<clinit>()方法的类型肯定是java.lang.Object。

  • 由于父类的<clinit>()方法先执行,也就意味着父类中定义的静态语句块要优先于子类的变量赋值操作。

  • <clinit>()方法对于类或接口来说并不是必需的,如果一个类中没有静态语句块,也没有对变量的赋值操作,那么编译器可以不为这个类生成<clinit>()方法。

  • 接口中不能使用静态语句块,但仍然有变量初始化的赋值操作,因此接口与类一样都会生成<clinit>()方法。但接口与类不同的是,执行接口的<clinit>()方法不需要先执行父接口的<clinit>()方法,因为只有当父接口中定义的变量被使用时,父接口才会被初始化。此外,接口的实现类在初始化时也一样不会执行接口的<clinit>()方法。

  • Java虚拟机必须保证一个类的<clinit>()方法在多线程环境中被正确地加锁同步,如果多个线程同时去初始化一个类,那么只会有其中一个线程去执行这个类的<clinit>()方法,其他线程都需要阻塞等待,直到活动线程执行完毕<clinit>()方法。如果在一个类的<clinit>()方法中有耗时很长的操作,那就可能造成多个进程阻塞,在实际应用中这种阻塞往往是很隐蔽的。

       如下代码中,<clinit>()方法将执行不完,多线程访问的情况下,只会有一个线程会执行<clinit>()方法。其它线程将阻塞。当<clinit>()方法执行完后,被阻塞的线程被唤醒后不会再次进入<clinit>()方法。同一个类加载器下,一个类型只会被初始化一次。

public class DeadLoopTestCase {static class DeadLoopClass {static {// 如果不加上这个if语句,编译器将提示“Initializer does not complete normally”并拒绝编译if (true) {System.out.println(Thread.currentThread() + "init DeadLoopClass");while (true) {}}}}public static void main(String[] args) {Runnable script = new Runnable() {public void run() {System.out.println(Thread.currentThread() + "start");DeadLoopClass dlc = new DeadLoopClass();System.out.println(Thread.currentThread() + " run over");}};Thread thread1 = new Thread(script);Thread thread2 = new Thread(script);thread1.start();thread2.start();}}

执行结果(程序被阻塞,不会停止)

Thread[Thread-1,5,main]start
Thread[Thread-0,5,main]start
Thread[Thread-0,5,main]init DeadLoopClass

可见,只有一个线程执行了<clinit>()方法。

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

相关文章

  1. Vue学习之事件

    简介 事件的基本使用&#xff1a; 在vue中&#xff0c;使用v-on:事件名“代码块或回调方法名”&#xff0c;进行事件的绑定&#xff0c;简便写法是事件名“代码块或回调方法名”,回调方法要在vue实例对象的methods配置项中进行配置。 注意事项&#xff1a; vm中的methods中配…...

    2024/4/18 21:16:05
  2. Volume 多边形裁剪测试

    vtk自带了一个Volume剪切的例子&#xff0c; 可以用隐函数确定的剪切面裁剪vtkImageData. 本人对该例子代码略加修改&#xff0c;剪切口为一个封闭的梯形。其代码和配置文件如下。 目录 ClipVolume.cxx CMakeLists.txt 运行结果 ClipVolume.cxx // This program draws a …...

    2024/4/15 4:44:49
  3. 源程序清单-汽车动力性计算图表软件V1.0

    Dim Umax As Double, Nmax As Double, V10 As Double, Vminrear As Double Umax以最高当速比时最高转速时设定为最高车速度 V10 为最小稳定车速, Vminrear 为最小倒车速度 Dim Tqudongqiao As Double, Tqufa As Double 驱动桥最大输出扭矩&#xff0c;最大滑动阻力矩 Dim V…...

    2024/4/20 11:03:22
  4. 《高级会计学》作业2

    一、多选题 (共 8 道试题,共 40 分) 1.以现金结算的股份支付最常用的工具是() A.模拟股票 B.现金股票增值权 C.股票期权 D.股票股利 2.分部报告需要披露的信息包括 A.分部收入 B.分部费用 C.分布利润 D.分部资产 E.分部负债 3.合并财务报表编制中需要抵消的项目有&#xff08;&…...

    2024/4/16 3:02:51
  5. PyQt高级界面控件及操作

    PyQt高级界面控件一、表格与树结构1、表格1.代码示例2.代码解析&#xff1a;3.补充说明属性参数2、树结构1.自定义树结构2.系统定制模式二、QStackedWidget组件三、QTabWidget四、多窗口模式 QMidArea五、窗口停靠 QDockWidget六、调用其他应用 QAxWidget七、QWebEngineView通过…...

    2024/4/19 23:44:49
  6. 导弹拦截的(题解)

    各位dalao~ ~~有锅莫喷orz..... 贴AC代码 #include<iostream> #include<cstdio> using namespace std; int n0;//n是用来计数总的个数 int a[100050]; int low[100050]; int d0;//d是长度 int find(int x) {int l1,rd,mid;while(l<r){mid(lr)/2;if(x<low[…...

    2024/4/14 2:49:48
  7. 读书笔记自动生成思维导图(markdown格式)

    文章目录引言一、用 markdown 整理读书笔记&#xff08;一&#xff09; 从电子书导出笔记&#xff08;二&#xff09;自己整理读书笔记二、自动生成思维导图方法①&#xff1a;xmind 自动导入 markdown方法②&#xff1a;借助 markmap 插件结语参考链接引言 我们在看书、学习课…...

    2024/4/5 4:00:11
  8. 数列极差C++代码

    数列极差 时间限制 : - MS 空间限制 : - KB 评测说明 : 1s,256m 问题描述 佳佳的老师在黑板上写了一个由 个正整数组成的数列&#xff0c;要求佳佳进行如下操作&#xff1a;每次擦去其中的两个数 和 &#xff0c;然后在数列中加入一个数 &#xff0c;如此下去直至黑板上剩…...

    2024/4/14 2:48:57
  9. 若雪和她的小伙伴

    来玩一二三木头人吧&#xff0c;谁输了就做饭&#xff0c;好&#xff0c;游戏规则&#xff0c;倒记时结束没过终点就算输&#xff0c;游戏现在开始&#xff0c;快&#xff0c;快&#xff0c;快&#xff0c;跑快点&#xff0c;岩雪和小伙伴们争先恐后着奔跑着…在倒记时还 有3秒…...

    2024/4/15 4:45:15
  10. 【C进阶】(2)位段 - 枚举 - 联合

    目录 1、位段 1.1、什么是位段 1.2、位段的内存分配 1.3、位段的跨平台问题 1.4、位段的应用 2、枚举 2.1、枚举类型的定义 2.2、枚举的优点 2.3、枚举的使用 3、联合 3.1、联合类型的定义 3.2、联合的特点 3.3、联合大小的计算 1、位段 1.1、什么是位段 位段的声明和结构是…...

    2024/4/18 15:02:49
  11. 前端面试题大全

    Vue面试题 生命周期函数面试题 1.什么是 vue 生命周期 2.vue生命周期的作用是什么 3.第一次页面加载会触发哪几个钩子 4.简述每个周期具体适合哪些场景 5.created和mounted的区别 6.vue获取数据在哪个周期函数 7.请详细说下你对vue生命周期的理解&#xff1f; vue路由面试题 …...

    2024/4/14 2:48:52
  12. 『题解』Luogu-P5572 [CmdOI2019]简单的数论题

    4P5572 [CmdOI2019]简单的数论题 思路基本同 P4240 毒瘤之神的考验。 Description 多测&#xff0c;TTT 组数据。 给定整数 n,mn, mn,m&#xff0c;请求出 [∑i1n∑j1mφ(lcm⁡(i,j)gcd⁡(i,j))]mod23333\left[\sum_{i 1}^n \sum_{j 1}^m \varphi\left(\dfrac{\operatorna…...

    2024/4/22 20:14:14
  13. Linux下的虚拟化部署

    #1.kvm安装条件# 1.inter cpu ----> vmx ##inter的cpu需要支持vmx 2.amd cpu -------> svm ##amd的cpu需要支持svm #2.kvm虚拟化安装# dnf group install "Virtualization Client" "Virtualization Hypervisor" "Virtualization Tools&…...

    2024/4/14 2:49:02
  14. hexo配置的博客,预览的时候没有问题,可是上传远端之后就只有文字没有背景

    使用hexo配置个人博客参考文章 用hexo手把手搭建个人的博客网站 问题描述&#xff1a; 在历经磨难搭建完博客之后&#xff0c;部署到gitee上之后&#xff0c;访问结果居然没有样式加载出来&#xff0c;说实话有点蓝瘦。 原因分析&#xff1a; 打开_config.yml文件&#xf…...

    2024/4/7 17:38:45
  15. GBase8s数据库DROP ROUTINE 语句

    使用 DROP ROUTINE 语句从数据库中删除用户定义的例程&#xff08;UDR&#xff09;&#xff1b; 用法 删除 UDR 会从数据库中除去 UDR 的文本和可执行的版本。如果不指定 UDR 是用户定义的函数 还是用户定义的过程&#xff0c;则此语句指导服务器删除指定的用户定义的函数或…...

    2024/4/14 2:49:48
  16. springboot_10 常用注解

    只是整理一些之前9篇文章中用到的注解 真正实际用到的远远大于这些 1. a After 测试test包中的注解 标识测试前的工作 AutoConfigureMockMvc 测试test包中的注解 自动配置mockmvc ApiModel(value “用户实体类”) swagger2内部的注解 放在响应的实体类上的 生成文档的时…...

    2024/4/14 2:49:53
  17. paddlepaddle 7 面向语义分割的迁移学习

    正常的迁移学习&#xff08;迁移自建网络&#xff09;使用方法如paddlepaddle 6 使用迁移学习对图像进行分类_a486259的博客-CSDN博客&#xff0c;但需要使用Deeplab、HRNet、UNET&#xff0c;FCN等知名的开源语义分割模型得要有相应的模型结构文件和模型权重文件&#xff0c;才…...

    2024/4/14 2:49:48
  18. 《华林科纳-半导体工艺》硅上多晶磷化铟的生长和表征

    本文介绍了一种以In2O3或In为中间体&#xff0c;在硅片上直接合成多晶InP的方法。用粉末x光衍射分析了中间体和最终多晶磷化铟的晶体质量和转化率。根据中间材料的类型和衬底取向硅&#xff0c;发现微晶尺寸是变化的从739纳米到887纳米。用原子力显微镜研究了多晶磷化铟的表面形…...

    2024/4/14 2:49:53
  19. Chandy-Lamport分布式快照算法

    文章目录Chandy-Lamport分布式快照算法Distributed SnapshotThe Chandy-Lamport AlgorithmExampleChandy-Lamport分布式快照算法 Distributed Snapshot 分布式快照&#xff1a;特定时间点记录下来的分布式系统的全局状态&#xff08;global state&#xff09;。 分布式快照主…...

    2024/4/14 2:49:38
  20. Android 斜体字被裁切问题解决

    一、提出问题 最近在使用UI小伙伴提供的字库的时候&#xff0c;发现由于这个字库是斜体的&#xff0c;在我将文字放置到我的checkbox&#xff08;checkbox的本质是个textview)上面的时候&#xff0c;最后面的一个字总会被垂直地裁切掉一点。怎么调整布局都无法解决。 二、解决…...

    2024/4/14 2:49:38

最新文章

  1. 算法训练营第53天|LeetCode 1143.最长公共子序列 1035.不相交的线 53. 最大子序和

    LeetCode 1143.最长公共子序列 题目链接&#xff1a; LeetCode 1143.最长公共子序列 代码&#xff1a; class Solution { public:int longestCommonSubsequence(string text1, string text2) {int size1text1.size();int size2text2.size();int result0;vector<vector&l…...

    2024/5/1 20:23:43
  2. 梯度消失和梯度爆炸的一些处理方法

    在这里是记录一下梯度消失或梯度爆炸的一些处理技巧。全当学习总结了如有错误还请留言&#xff0c;在此感激不尽。 权重和梯度的更新公式如下&#xff1a; w w − η ⋅ ∇ w w w - \eta \cdot \nabla w ww−η⋅∇w 个人通俗的理解梯度消失就是网络模型在反向求导的时候出…...

    2024/3/20 10:50:27
  3. 游戏引擎架构01__引擎架构图

    根据游戏引擎架构预设的引擎架构来构建运行时引擎架构 ​...

    2024/5/1 13:06:15
  4. 算法四十天-删除排序链表中的重复元素

    删除排序链表中的重复元素 题目要求 解题思路 一次遍历 由于给定的链表是排好序的&#xff0c;因此重复的元素在链表中的出现的位置是连续的&#xff0c;因此我们只需要对链表进行一次遍历&#xff0c;就可以删除重复的元素。 具体地&#xff0c;我们从指针cur指向链表的头节…...

    2024/5/1 13:07:13
  5. 【外汇早评】美通胀数据走低,美元调整

    原标题:【外汇早评】美通胀数据走低,美元调整昨日美国方面公布了新一期的核心PCE物价指数数据,同比增长1.6%,低于前值和预期值的1.7%,距离美联储的通胀目标2%继续走低,通胀压力较低,且此前美国一季度GDP初值中的消费部分下滑明显,因此市场对美联储后续更可能降息的政策…...

    2024/5/1 17:30:59
  6. 【原油贵金属周评】原油多头拥挤,价格调整

    原标题:【原油贵金属周评】原油多头拥挤,价格调整本周国际劳动节,我们喜迎四天假期,但是整个金融市场确实流动性充沛,大事频发,各个商品波动剧烈。美国方面,在本周四凌晨公布5月份的利率决议和新闻发布会,维持联邦基金利率在2.25%-2.50%不变,符合市场预期。同时美联储…...

    2024/4/30 18:14:14
  7. 【外汇周评】靓丽非农不及疲软通胀影响

    原标题:【外汇周评】靓丽非农不及疲软通胀影响在刚结束的周五,美国方面公布了新一期的非农就业数据,大幅好于前值和预期,新增就业重新回到20万以上。具体数据: 美国4月非农就业人口变动 26.3万人,预期 19万人,前值 19.6万人。 美国4月失业率 3.6%,预期 3.8%,前值 3…...

    2024/4/29 2:29:43
  8. 【原油贵金属早评】库存继续增加,油价收跌

    原标题:【原油贵金属早评】库存继续增加,油价收跌周三清晨公布美国当周API原油库存数据,上周原油库存增加281万桶至4.692亿桶,增幅超过预期的74.4万桶。且有消息人士称,沙特阿美据悉将于6月向亚洲炼油厂额外出售更多原油,印度炼油商预计将每日获得至多20万桶的额外原油供…...

    2024/4/30 18:21:48
  9. 【外汇早评】日本央行会议纪要不改日元强势

    原标题:【外汇早评】日本央行会议纪要不改日元强势近两日日元大幅走强与近期市场风险情绪上升,避险资金回流日元有关,也与前一段时间的美日贸易谈判给日本缓冲期,日本方面对汇率问题也避免继续贬值有关。虽然今日早间日本央行公布的利率会议纪要仍然是支持宽松政策,但这符…...

    2024/4/27 17:58:04
  10. 【原油贵金属早评】欧佩克稳定市场,填补伊朗问题的影响

    原标题:【原油贵金属早评】欧佩克稳定市场,填补伊朗问题的影响近日伊朗局势升温,导致市场担忧影响原油供给,油价试图反弹。此时OPEC表态稳定市场。据消息人士透露,沙特6月石油出口料将低于700万桶/日,沙特已经收到石油消费国提出的6月份扩大出口的“适度要求”,沙特将满…...

    2024/4/27 14:22:49
  11. 【外汇早评】美欲与伊朗重谈协议

    原标题:【外汇早评】美欲与伊朗重谈协议美国对伊朗的制裁遭到伊朗的抗议,昨日伊朗方面提出将部分退出伊核协议。而此行为又遭到欧洲方面对伊朗的谴责和警告,伊朗外长昨日回应称,欧洲国家履行它们的义务,伊核协议就能保证存续。据传闻伊朗的导弹已经对准了以色列和美国的航…...

    2024/4/28 1:28:33
  12. 【原油贵金属早评】波动率飙升,市场情绪动荡

    原标题:【原油贵金属早评】波动率飙升,市场情绪动荡因中美贸易谈判不安情绪影响,金融市场各资产品种出现明显的波动。随着美国与中方开启第十一轮谈判之际,美国按照既定计划向中国2000亿商品征收25%的关税,市场情绪有所平复,已经开始接受这一事实。虽然波动率-恐慌指数VI…...

    2024/4/30 9:43:09
  13. 【原油贵金属周评】伊朗局势升温,黄金多头跃跃欲试

    原标题:【原油贵金属周评】伊朗局势升温,黄金多头跃跃欲试美国和伊朗的局势继续升温,市场风险情绪上升,避险黄金有向上突破阻力的迹象。原油方面稍显平稳,近期美国和OPEC加大供给及市场需求回落的影响,伊朗局势并未推升油价走强。近期中美贸易谈判摩擦再度升级,美国对中…...

    2024/4/27 17:59:30
  14. 【原油贵金属早评】市场情绪继续恶化,黄金上破

    原标题:【原油贵金属早评】市场情绪继续恶化,黄金上破周初中国针对于美国加征关税的进行的反制措施引发市场情绪的大幅波动,人民币汇率出现大幅的贬值动能,金融市场受到非常明显的冲击。尤其是波动率起来之后,对于股市的表现尤其不安。隔夜美国股市出现明显的下行走势,这…...

    2024/4/25 18:39:16
  15. 【外汇早评】美伊僵持,风险情绪继续升温

    原标题:【外汇早评】美伊僵持,风险情绪继续升温昨日沙特两艘油轮再次发生爆炸事件,导致波斯湾局势进一步恶化,市场担忧美伊可能会出现摩擦生火,避险品种获得支撑,黄金和日元大幅走强。美指受中美贸易问题影响而在低位震荡。继5月12日,四艘商船在阿联酋领海附近的阿曼湾、…...

    2024/4/28 1:34:08
  16. 【原油贵金属早评】贸易冲突导致需求低迷,油价弱势

    原标题:【原油贵金属早评】贸易冲突导致需求低迷,油价弱势近日虽然伊朗局势升温,中东地区几起油船被袭击事件影响,但油价并未走高,而是出于调整结构中。由于市场预期局势失控的可能性较低,而中美贸易问题导致的全球经济衰退风险更大,需求会持续低迷,因此油价调整压力较…...

    2024/4/26 19:03:37
  17. 氧生福地 玩美北湖(上)——为时光守候两千年

    原标题:氧生福地 玩美北湖(上)——为时光守候两千年一次说走就走的旅行,只有一张高铁票的距离~ 所以,湖南郴州,我来了~ 从广州南站出发,一个半小时就到达郴州西站了。在动车上,同时改票的南风兄和我居然被分到了一个车厢,所以一路非常愉快地聊了过来。 挺好,最起…...

    2024/4/29 20:46:55
  18. 氧生福地 玩美北湖(中)——永春梯田里的美与鲜

    原标题:氧生福地 玩美北湖(中)——永春梯田里的美与鲜一觉醒来,因为大家太爱“美”照,在柳毅山庄去寻找龙女而错过了早餐时间。近十点,向导坏坏还是带着饥肠辘辘的我们去吃郴州最富有盛名的“鱼头粉”。说这是“十二分推荐”,到郴州必吃的美食之一。 哇塞!那个味美香甜…...

    2024/4/30 22:21:04
  19. 氧生福地 玩美北湖(下)——奔跑吧骚年!

    原标题:氧生福地 玩美北湖(下)——奔跑吧骚年!让我们红尘做伴 活得潇潇洒洒 策马奔腾共享人世繁华 对酒当歌唱出心中喜悦 轰轰烈烈把握青春年华 让我们红尘做伴 活得潇潇洒洒 策马奔腾共享人世繁华 对酒当歌唱出心中喜悦 轰轰烈烈把握青春年华 啊……啊……啊 两…...

    2024/5/1 4:32:01
  20. 扒开伪装医用面膜,翻六倍价格宰客,小姐姐注意了!

    原标题:扒开伪装医用面膜,翻六倍价格宰客,小姐姐注意了!扒开伪装医用面膜,翻六倍价格宰客!当行业里的某一品项火爆了,就会有很多商家蹭热度,装逼忽悠,最近火爆朋友圈的医用面膜,被沾上了污点,到底怎么回事呢? “比普通面膜安全、效果好!痘痘、痘印、敏感肌都能用…...

    2024/4/27 23:24:42
  21. 「发现」铁皮石斛仙草之神奇功效用于医用面膜

    原标题:「发现」铁皮石斛仙草之神奇功效用于医用面膜丽彦妆铁皮石斛医用面膜|石斛多糖无菌修护补水贴19大优势: 1、铁皮石斛:自唐宋以来,一直被列为皇室贡品,铁皮石斛生于海拔1600米的悬崖峭壁之上,繁殖力差,产量极低,所以古代仅供皇室、贵族享用 2、铁皮石斛自古民间…...

    2024/4/28 5:48:52
  22. 丽彦妆\医用面膜\冷敷贴轻奢医学护肤引导者

    原标题:丽彦妆\医用面膜\冷敷贴轻奢医学护肤引导者【公司简介】 广州华彬企业隶属香港华彬集团有限公司,专注美业21年,其旗下品牌: 「圣茵美」私密荷尔蒙抗衰,产后修复 「圣仪轩」私密荷尔蒙抗衰,产后修复 「花茵莳」私密荷尔蒙抗衰,产后修复 「丽彦妆」专注医学护…...

    2024/4/30 9:42:22
  23. 广州械字号面膜生产厂家OEM/ODM4项须知!

    原标题:广州械字号面膜生产厂家OEM/ODM4项须知!广州械字号面膜生产厂家OEM/ODM流程及注意事项解读: 械字号医用面膜,其实在我国并没有严格的定义,通常我们说的医美面膜指的应该是一种「医用敷料」,也就是说,医用面膜其实算作「医疗器械」的一种,又称「医用冷敷贴」。 …...

    2024/4/30 9:43:22
  24. 械字号医用眼膜缓解用眼过度到底有无作用?

    原标题:械字号医用眼膜缓解用眼过度到底有无作用?医用眼膜/械字号眼膜/医用冷敷眼贴 凝胶层为亲水高分子材料,含70%以上的水分。体表皮肤温度传导到本产品的凝胶层,热量被凝胶内水分子吸收,通过水分的蒸发带走大量的热量,可迅速地降低体表皮肤局部温度,减轻局部皮肤的灼…...

    2024/4/30 9:42:49
  25. 配置失败还原请勿关闭计算机,电脑开机屏幕上面显示,配置失败还原更改 请勿关闭计算机 开不了机 这个问题怎么办...

    解析如下&#xff1a;1、长按电脑电源键直至关机&#xff0c;然后再按一次电源健重启电脑&#xff0c;按F8健进入安全模式2、安全模式下进入Windows系统桌面后&#xff0c;按住“winR”打开运行窗口&#xff0c;输入“services.msc”打开服务设置3、在服务界面&#xff0c;选中…...

    2022/11/19 21:17:18
  26. 错误使用 reshape要执行 RESHAPE,请勿更改元素数目。

    %读入6幅图像&#xff08;每一幅图像的大小是564*564&#xff09; f1 imread(WashingtonDC_Band1_564.tif); subplot(3,2,1),imshow(f1); f2 imread(WashingtonDC_Band2_564.tif); subplot(3,2,2),imshow(f2); f3 imread(WashingtonDC_Band3_564.tif); subplot(3,2,3),imsho…...

    2022/11/19 21:17:16
  27. 配置 已完成 请勿关闭计算机,win7系统关机提示“配置Windows Update已完成30%请勿关闭计算机...

    win7系统关机提示“配置Windows Update已完成30%请勿关闭计算机”问题的解决方法在win7系统关机时如果有升级系统的或者其他需要会直接进入一个 等待界面&#xff0c;在等待界面中我们需要等待操作结束才能关机&#xff0c;虽然这比较麻烦&#xff0c;但是对系统进行配置和升级…...

    2022/11/19 21:17:15
  28. 台式电脑显示配置100%请勿关闭计算机,“准备配置windows 请勿关闭计算机”的解决方法...

    有不少用户在重装Win7系统或更新系统后会遇到“准备配置windows&#xff0c;请勿关闭计算机”的提示&#xff0c;要过很久才能进入系统&#xff0c;有的用户甚至几个小时也无法进入&#xff0c;下面就教大家这个问题的解决方法。第一种方法&#xff1a;我们首先在左下角的“开始…...

    2022/11/19 21:17:14
  29. win7 正在配置 请勿关闭计算机,怎么办Win7开机显示正在配置Windows Update请勿关机...

    置信有很多用户都跟小编一样遇到过这样的问题&#xff0c;电脑时发现开机屏幕显现“正在配置Windows Update&#xff0c;请勿关机”(如下图所示)&#xff0c;而且还需求等大约5分钟才干进入系统。这是怎样回事呢&#xff1f;一切都是正常操作的&#xff0c;为什么开时机呈现“正…...

    2022/11/19 21:17:13
  30. 准备配置windows 请勿关闭计算机 蓝屏,Win7开机总是出现提示“配置Windows请勿关机”...

    Win7系统开机启动时总是出现“配置Windows请勿关机”的提示&#xff0c;没过几秒后电脑自动重启&#xff0c;每次开机都这样无法进入系统&#xff0c;此时碰到这种现象的用户就可以使用以下5种方法解决问题。方法一&#xff1a;开机按下F8&#xff0c;在出现的Windows高级启动选…...

    2022/11/19 21:17:12
  31. 准备windows请勿关闭计算机要多久,windows10系统提示正在准备windows请勿关闭计算机怎么办...

    有不少windows10系统用户反映说碰到这样一个情况&#xff0c;就是电脑提示正在准备windows请勿关闭计算机&#xff0c;碰到这样的问题该怎么解决呢&#xff0c;现在小编就给大家分享一下windows10系统提示正在准备windows请勿关闭计算机的具体第一种方法&#xff1a;1、2、依次…...

    2022/11/19 21:17:11
  32. 配置 已完成 请勿关闭计算机,win7系统关机提示“配置Windows Update已完成30%请勿关闭计算机”的解决方法...

    今天和大家分享一下win7系统重装了Win7旗舰版系统后&#xff0c;每次关机的时候桌面上都会显示一个“配置Windows Update的界面&#xff0c;提示请勿关闭计算机”&#xff0c;每次停留好几分钟才能正常关机&#xff0c;导致什么情况引起的呢&#xff1f;出现配置Windows Update…...

    2022/11/19 21:17:10
  33. 电脑桌面一直是清理请关闭计算机,windows7一直卡在清理 请勿关闭计算机-win7清理请勿关机,win7配置更新35%不动...

    只能是等着&#xff0c;别无他法。说是卡着如果你看硬盘灯应该在读写。如果从 Win 10 无法正常回滚&#xff0c;只能是考虑备份数据后重装系统了。解决来方案一&#xff1a;管理员运行cmd&#xff1a;net stop WuAuServcd %windir%ren SoftwareDistribution SDoldnet start WuA…...

    2022/11/19 21:17:09
  34. 计算机配置更新不起,电脑提示“配置Windows Update请勿关闭计算机”怎么办?

    原标题&#xff1a;电脑提示“配置Windows Update请勿关闭计算机”怎么办&#xff1f;win7系统中在开机与关闭的时候总是显示“配置windows update请勿关闭计算机”相信有不少朋友都曾遇到过一次两次还能忍但经常遇到就叫人感到心烦了遇到这种问题怎么办呢&#xff1f;一般的方…...

    2022/11/19 21:17:08
  35. 计算机正在配置无法关机,关机提示 windows7 正在配置windows 请勿关闭计算机 ,然后等了一晚上也没有关掉。现在电脑无法正常关机...

    关机提示 windows7 正在配置windows 请勿关闭计算机 &#xff0c;然后等了一晚上也没有关掉。现在电脑无法正常关机以下文字资料是由(历史新知网www.lishixinzhi.com)小编为大家搜集整理后发布的内容&#xff0c;让我们赶快一起来看一下吧&#xff01;关机提示 windows7 正在配…...

    2022/11/19 21:17:05
  36. 钉钉提示请勿通过开发者调试模式_钉钉请勿通过开发者调试模式是真的吗好不好用...

    钉钉请勿通过开发者调试模式是真的吗好不好用 更新时间:2020-04-20 22:24:19 浏览次数:729次 区域: 南阳 > 卧龙 列举网提醒您:为保障您的权益,请不要提前支付任何费用! 虚拟位置外设器!!轨迹模拟&虚拟位置外设神器 专业用于:钉钉,外勤365,红圈通,企业微信和…...

    2022/11/19 21:17:05
  37. 配置失败还原请勿关闭计算机怎么办,win7系统出现“配置windows update失败 还原更改 请勿关闭计算机”,长时间没反应,无法进入系统的解决方案...

    前几天班里有位学生电脑(windows 7系统)出问题了&#xff0c;具体表现是开机时一直停留在“配置windows update失败 还原更改 请勿关闭计算机”这个界面&#xff0c;长时间没反应&#xff0c;无法进入系统。这个问题原来帮其他同学也解决过&#xff0c;网上搜了不少资料&#x…...

    2022/11/19 21:17:04
  38. 一个电脑无法关闭计算机你应该怎么办,电脑显示“清理请勿关闭计算机”怎么办?...

    本文为你提供了3个有效解决电脑显示“清理请勿关闭计算机”问题的方法&#xff0c;并在最后教给你1种保护系统安全的好方法&#xff0c;一起来看看&#xff01;电脑出现“清理请勿关闭计算机”在Windows 7(SP1)和Windows Server 2008 R2 SP1中&#xff0c;添加了1个新功能在“磁…...

    2022/11/19 21:17:03
  39. 请勿关闭计算机还原更改要多久,电脑显示:配置windows更新失败,正在还原更改,请勿关闭计算机怎么办...

    许多用户在长期不使用电脑的时候&#xff0c;开启电脑发现电脑显示&#xff1a;配置windows更新失败&#xff0c;正在还原更改&#xff0c;请勿关闭计算机。。.这要怎么办呢&#xff1f;下面小编就带着大家一起看看吧&#xff01;如果能够正常进入系统&#xff0c;建议您暂时移…...

    2022/11/19 21:17:02
  40. 还原更改请勿关闭计算机 要多久,配置windows update失败 还原更改 请勿关闭计算机,电脑开机后一直显示以...

    配置windows update失败 还原更改 请勿关闭计算机&#xff0c;电脑开机后一直显示以以下文字资料是由(历史新知网www.lishixinzhi.com)小编为大家搜集整理后发布的内容&#xff0c;让我们赶快一起来看一下吧&#xff01;配置windows update失败 还原更改 请勿关闭计算机&#x…...

    2022/11/19 21:17:01
  41. 电脑配置中请勿关闭计算机怎么办,准备配置windows请勿关闭计算机一直显示怎么办【图解】...

    不知道大家有没有遇到过这样的一个问题&#xff0c;就是我们的win7系统在关机的时候&#xff0c;总是喜欢显示“准备配置windows&#xff0c;请勿关机”这样的一个页面&#xff0c;没有什么大碍&#xff0c;但是如果一直等着的话就要两个小时甚至更久都关不了机&#xff0c;非常…...

    2022/11/19 21:17:00
  42. 正在准备配置请勿关闭计算机,正在准备配置windows请勿关闭计算机时间长了解决教程...

    当电脑出现正在准备配置windows请勿关闭计算机时&#xff0c;一般是您正对windows进行升级&#xff0c;但是这个要是长时间没有反应&#xff0c;我们不能再傻等下去了。可能是电脑出了别的问题了&#xff0c;来看看教程的说法。正在准备配置windows请勿关闭计算机时间长了方法一…...

    2022/11/19 21:16:59
  43. 配置失败还原请勿关闭计算机,配置Windows Update失败,还原更改请勿关闭计算机...

    我们使用电脑的过程中有时会遇到这种情况&#xff0c;当我们打开电脑之后&#xff0c;发现一直停留在一个界面&#xff1a;“配置Windows Update失败&#xff0c;还原更改请勿关闭计算机”&#xff0c;等了许久还是无法进入系统。如果我们遇到此类问题应该如何解决呢&#xff0…...

    2022/11/19 21:16:58
  44. 如何在iPhone上关闭“请勿打扰”

    Apple’s “Do Not Disturb While Driving” is a potentially lifesaving iPhone feature, but it doesn’t always turn on automatically at the appropriate time. For example, you might be a passenger in a moving car, but your iPhone may think you’re the one dri…...

    2022/11/19 21:16:57