E-COM-NET
首页
在线工具
Layui镜像站
SUI文档
联系我们
推荐频道
Java
PHP
C++
C
C#
Python
Ruby
go语言
Scala
Servlet
Vue
MySQL
NoSQL
Redis
CSS
Oracle
SQL Server
DB2
HBase
Http
HTML5
Spring
Ajax
Jquery
JavaScript
Json
XML
NodeJs
mybatis
Hibernate
算法
设计模式
shell
数据结构
大数据
JS
消息中间件
正则表达式
Tomcat
SQL
Nginx
Shiro
Maven
Linux
常量池
13 享元模式
String也是享元模式的运用,String都是存在于字符串
常量池
中,有就是直接获取,没有就创建并放入字符串
常量池
中。demo-简单beanFactory
tx_xtt
·
2024-01-15 13:30
设计模式
享元模式
java
开发语言
JVM运行时数据区(下篇)
字符串
常量池
,存储字符串的常量。堆空间有三个需要关注的值,usedtotalmax。used指的是当前已使用的堆内存,total是java虚拟机已经分配
weixin_54498224
·
2024-01-15 11:06
jvm
Java SE
构造方法如何操作字符串
常量池
?String的常见
虎啊兄弟
·
2024-01-15 10:46
+ 拼接生成的字符串是在字符串
常量池
在是在堆中?
勤奋好学“+”拼接生成的字符串是在字符串
常量池
在是在堆中?这个问题问的方式有些谬误,JDK7时字符串
常量池
已经从永久代移到堆中了,也就是说JDK7时字符串
常量池
是堆的一部分。
尹楷楷
·
2024-01-14 12:49
JVM系列——垃圾回收调优,类加载和字节码技术day2-1
垃圾回收调优如何确定自己使用了哪些垃圾回收器垃圾回收调优涉及目标新生代调优新生代特点设置新生代的空间大小新生代中的幸存区老年代调优类加载类文件结构编译查看字节码文件分析16进制字节码文件使用notepad进行转码第一行:魔数(前4个字节)我是以索引看的,第一个字节就是第0字节第一行:版本(4~7字节)第一行:
常量池
简明编程
·
2024-01-14 06:43
JVM
笔记
Java学习
jvm
java
算法
java中String的两种创建方法、字符串
常量池
java中String的两种创建方法字符串
常量池
字符串
常量池
String的两种创建方式:第一种方式是在
常量池
中获取字符串对象。第二种方式是直接在堆空间创建一个新的字符串对象。
LIJINGPO
·
2024-01-14 03:51
JVM
java
开发语言
享元模式应用
以下是一些享元模式的应用场景:字符串池在Java中,字符串
常量池
就是一种典型的享元模式的应用。由于字符串是不可变的,因此多个字符串变量可以引用同一个字符串对象,以减少内存的占用。
jgzquanquan
·
2024-01-13 15:40
设计模式
享元模式
java
面试题系列:new String("abc")创建了几个对象
涉及到
常量池
、对象内存分配等问题。涉及背景知识详解在分析这个问题之前,我们先来了解一下JVM的组成,如图所示。
跟着Mic学架构
·
2024-01-13 10:22
【JVM】字节码文件的组成
2.
常量池
常量池
是字节码文件中的一个结构,包含了该类的所有常量,如数字,字符串,符号常量等。3.访问标志用于描述该类或接口的访问权限和属性。
freedomSTUDENT
·
2024-01-13 07:04
JVM
jvm
问题集锦(一)
一、字符串
常量池
是什么?不同的JDK版本都分别位于哪个区域?字符串
常量池
是Java语言中的一个特性,它是一个存储字符串常量的池子。
沐暖沐
·
2024-01-13 01:12
java
开发语言
String#intern
1.intern方法intern()方法可以在运行期间向字符串中动态加入字符串实例的方式,它的功能很简单,总结起来就一句话可以在运行时向字符串池中添加字符串常量添加的原则是,如果
常量池
中存在当前字符串,
coffee_babe
·
2024-01-12 03:57
java
java
开发语言
String intern()方法
String.intern()是一个native(本地)方法,其作用是将指定的字符串对象的引用保存在字符串
常量池
中,并返回
常量池
中对应的字符串引用。
墨子白
·
2024-01-11 19:27
java
java
面试题:String s = new String(“xyz“) 创建了几个对象?
从方法区说起
常量池
存在于方法区,而方法区在jdk1.7版本前后改变比较大,所以还是先来说说方法区的演变。在jdk1.7版本之前,
常量池
存在
xuxu1116
·
2024-01-11 11:47
面试题
java
面试题
深入理解JVM - 方法调用
解析所有方法调用的目标方法在Class文件里面都是一个
常量池
中的符号引用,在类加载的解析阶段,会将其中的一部分符号引用转化为直接引用,
xiaolyuh
·
2024-01-11 11:59
【JVM 基础】类字节码详解
JVM基础-类字节码详解多语言编译为字节码在JVM运行Java字节码文件Class文件的结构属性从一个例子开始反编译字节码文件字节码文件信息
常量池
方法表集合类名再看两个示例分析try-catch-finallykotlin
沁禹
·
2024-01-11 07:54
深入理解Java进阶
-
JVM探索之旅
Java
JVM
后端开发
编译原理
JVM内存结构
文章目录1程序计数器2虚拟机栈2.1线程诊断运行(jstack命令)3本地方法栈4堆4.1堆内存划分(分代GC)4.2相关VM参数4.3堆内存诊断工具5方法区5.1
常量池
(constantpool)6直接内存
bone_ds
·
2024-01-11 03:09
jvm
javaSe基础
jvm
常量池
和StringTable
1运行时
常量池
常量池
,就是一张表,虚拟机指令根据这张常量表找到要执行的类名、方法名、参数类型、字面量等信息运行时
常量池
,
常量池
是*.class文件中的,当该类被加载,它的
常量池
信息就会放入运行时
常量池
,
bone_ds
·
2024-01-11 03:07
jvm
java
jvm
【JVM】Java内存区域详解
JDK7:JDK8:JDK1.8相比JDK1.7,移除了方法区,在本地内存中新增了元空间,相当于是用元空间来实现方法区,并将运行时
常量池
放在元空间中。线程共享只有堆以及字符串
常量池
。
Lemon Aourase
·
2024-01-10 18:13
JVM
jvm
java
java分析内存泄漏_Java中的内存泄漏分析说明
Java内存区域分析@(博客文章)[java]Java内存区域分析一Java程序的内存组成1Java堆2方法区含
常量池
3栈1Java虚拟机栈2本地方法栈4程序计数器5直接内存二各种OOM情形模拟一Java
孙圈圈
·
2024-01-10 16:17
java分析内存泄漏
2020-10-04:java中GC Root 对象有哪些?
3.方法区中常量引用的对象;比如:字符串
常量池
里的引用。4.本地方法栈中JNI(
福大大架构师每日一题
·
2024-01-09 16:41
2-6class字节码:
常量池
参考:https://tech.meituan.com/2019/09/05/java-bytecode-enhancement.htmlClassFileimage.png这些信息是给虚拟机用的,虚拟机为了处理咱们写的这些类而需要的信息。Classfile/Users/xixi/workspace6/JVMStudy/target/classes/com/xixi/jvm/classdef/He
西西_20f6
·
2024-01-08 23:05
Java中的String类:深入分析与高级应用
Java中的String类:深入分析与高级应用1.String类基础1.1概述1.2不可变性的好处1.3字符串
常量池
2.创建String对象3.String类常用方法4.内存管理4.1字符串
常量池
4.2
Stlio
·
2024-01-08 13:33
java
开发语言
Java常见面试题--后端——JavaSE前篇
在方法区中,包含了运行时
常量池
(存储编译期生成的各种字面量和符号引用)、类信息、字段信息、方法信息、构造函数等。方法区是线程共享的内存区域,它在程序启动时被创建,并且在程序结束时被销毁。2
m0_58462450
·
2024-01-08 12:06
#
后端
java
jvm
开发语言
Java常见面试题--后端——JavaSE后篇
缓存:由于字符串不可变,可以被缓存,例如字符串
常量池
。多个字符串变量如果指向相同的字符串
m0_58462450
·
2024-01-08 12:04
#
后端
java
开发语言
面试
JVM中对象的创建
二.JVM中对象的创建过程符号引用:
常量池
里面有一个对B对象的引用,但是我们目前不知道B对象的真实地址,所以我们用一个字面量去代表B对象。这就叫做符号引用。
今晚打老虎666
·
2024-01-08 04:31
JVM
android
java
android
studio
jvm
jetty
junit
hibernate
java对象创建步骤和对象内存布局
一、对象的创建1.查看指令是否加载当虚拟机遇到一条new指令时,首先先去检查这个指令的参数能否能在元空间
常量池
中定位到一个类的符号引用,并且检查这个符号引用代表的类是否已被加载、机械和初始化过(即判断类元信息是否存在
魏宁_david
·
2024-01-07 16:00
Java对象的创建过程、类加载的检查、内存分配、初始化零值、设置对象头、执行init构造方法
对象的创建过程对象的创建过程步骤一:类加载检查步骤二:分配内存步骤三:初始化零值步骤四:设置对象头步骤五:执行init构造方法对象的创建过程步骤一:类加载检查虚拟机遇到一条new指令时,首先将去检查这个指令的参数是否能在
常量池
中定位到这个类的符号引用
LIJINGPO
·
2024-01-07 08:57
JVM
jvm
常用类型_字符串..
开始就改成使用byte[]去储存字符串中的字符内容(但是你不能够说字符串等价于字符数组在Java中这种说法不成立)所有字符串字面量都是字符串实例字符串对象一旦创建成功以后他的内容是不可以被修改的2.字符串
常量池
在
axihaihai
·
2024-01-07 01:07
java
HotSpot虚拟机对象探秘
对象的创建Step1:类加载检查虚拟机遇到一条new指令时,首先会将去检查这个指令的参数是否能在
常量池
中定位到这个类的符号引用,并且检查这个符号引用代表的类是否已经被加载过、解析和初始化过。
XFTL
·
2024-01-06 11:11
JVM虚拟机
jvm
JVM篇:字符串
常量池
String类型字符串
常量池
问题publicclassdemo2{publicstaticvoidmain(String[]args){Strings1="a";Strings2="b";Strings3
zmbwcx2003
·
2024-01-06 01:44
jvm
JVM虚拟机(已整理,已废弃)
线程私有-每个线程都有自己的程序计数器PC,用于记录当前线程执行哪个行号##简述堆##简述虚拟机栈##简述堆栈区别##方法内局部变量是否线程安全##栈内存溢出原因##简述方法区
常量池
:可看做一张表,虚拟机指令根据此
常量池
表找到要执行的类名
能吧够
·
2024-01-04 20:08
jvm
linux
运维
B01、类加载子系统-02
除了类的信息外,方法区中还会存放运行时
常量池
沿途欣赏i
·
2024-01-04 08:11
JVM专栏
JVM
Java中,字符串
常量池
利用享元模式的原理实现了字符串对象的高效管理和重用
在Java中,字符串
常量池
是一个存储已创建的字符串对象的内存区域,它利用了享元模式的思想来优化内存使用和提高性能。
SisinRyu
·
2024-01-04 06:29
java
享元模式
开发语言
Java学习苦旅(十四)——String
文章目录创建字符串常见的构造String的方式
常量池
字符串比较理解字符串不可变字符、字节与字符串字符与字符串将字符合并为字符串获取字符串中的某个字符将字符数组中部分字符合并成字符串将字符串转换为字符判断字符串是否由数字构成字节与字符串实现字符串与字节数组的转换编码转换处理小结字符串常见操作字符串比较字符串查找字符串替换字符串拆分字符串截取其他操作方法
rampant boy
·
2024-01-04 00:15
Java学习苦旅
java
开发语言
后端
第6章-第2节-Java中的String类
java.lang.String类特点:1)、不可以被别的类继承;2)、字符串底层还是一个数组(字节、字符);3)、字符串不可变:字符串的数据内容不可以改变,但是引用地址是可以发生变化的;4)、字符串常量数据被存储在字符串
常量池
中
Zwarwolf
·
2024-01-03 11:48
java
javaString类三点注意--学习笔记
String是不可变字符串对象,改变String的值只会创建一个新对象,不会改变原来指向的对象,若原来指向的对象没有其它变量引用,则会被系统回收只要是以"字符串"创建的字符串对象,会存储到字符串
常量池
中
A呆唯
·
2024-01-03 09:55
学习笔记
学习
笔记
java
JVM工作原理与实战(三):字节码文件的组成
专栏导航JVM工作原理与实战RabbitMQ入门指南从零开始了解大数据目录专栏导航前言一、基础信息1.Magic魔数2.主副版本号3.其他信息二、
常量池
1.案例解析三、方法1.方法介绍2.案例解析四、字段五
橘子-青衫
·
2024-01-03 06:42
JVM工作原理与实战
jvm
java
后端
intellij-idea
对象创建方法,对象的内存分配,对象的访问定位
当遇到一个new指令,首先检查能否在方法区的
常量池
中能否定位到这个类的符号引用,并且检查类有没有进行加载、解析和初始化;第二:分配空间。
wyqqqqq
·
2024-01-02 20:34
java虚拟机内存管理
jdk8内存结构的差异二、程序计数器三、虚拟机栈3.1什么是虚拟机栈3.2什么是栈帧3.3栈帧的组成四、本地方法栈五、堆5.1堆的特点5.2堆的结构5.3堆的参数配置六、方法区6.1方法区结构6.2运行时
常量池
七
他叫阿来
·
2023-12-31 23:06
jvm
jvm
堆
方法区
运行时常量池
新生代老年代
JVM之对象创建
对象创建的流程1.类加载检查虚拟机遇到一条new指令时,首先将去检查这个指令的参数是否能在
常量池
中定位到一个类的符号引用,并且检查这个符号引用代表的类是否已被加载、解析和初始化过。
小阳小朋友
·
2023-12-31 22:02
jvm
Java-String、StringBuilder、Java的
常量池
及字节码文件分析案例
文章目录一、概述二、String类1.创建String类对象2.
常量池
①Java
常量池
1)内存分布2)字节码文件分析声明类的概述
常量池
3)类加载器函数体②字符串
常量池
概述案例3.常用方法4.String
悟兰因w
·
2023-12-31 12:22
后端开发
java
jvm
开发语言
设计模式之享元模式
一、什么是享元模式说到享元模式,第一个想到的应该就是池技术了,String
常量池
、数据库连接池、缓冲池等等都是享元模式的应用,所以说享元模式是池技术的重要实现方式。
java宝典
·
2023-12-31 09:37
“abc”、new String(“abc“)、“a”+“b“=“ab“、
常量池
“abc”如果
常量池
存在“abc”常量变量s1指向
常量池
的"abc"如果
常量池
不存在"abc"常量
常量池
先创建"abc",然后变量s1指向
常量池
的"abc"newString(“abc”)如果
常量池
存在
后端漫漫
·
2023-12-31 08:02
12万字Java面经总结
Java
java
开发语言
堆,栈,
常量池
在Java中的区别
编译期已经创建好(即指用双引号定义的)的就存储在
常量池
中,如果是运行期(new出来的对象)则存储在堆中。对于equals相等的字符串,在
常量池
中是只有一份的,在堆中则有多份。
今天也要努力呀y
·
2023-12-30 12:22
Java 类加载与字节码技术
类文件结构类文件结构字节码指令编译期处理类加载阶段类加载器运行期优化根据JVM规范,类文件结构如下ClassFile{u4magic;u2minor_version;//小版本号u2major_version;//主版本号u2constant_pool_count;//
常量池
xiongyuqing
·
2023-12-30 03:39
Java
java
开发语言
JVM系列-方法区、堆区、栈区
以下是它们的主要特征:1.方法区(MethodArea)方法区是JVM的一部分,用于存储类的元数据信息、静态变量、
常量池
等。
lostfish123
·
2023-12-29 18:19
Java
JVM
《深入理解JAVA虚拟机笔记》对象的创建和访问、对象头
对象的创建当Java虚拟机遇到一条字节码new指令时,首先将去检查这个指令的参数是否能做
常量池
中定位到一个类的符号引用,并且检查这个符号引用代表的类是否已被加载、解析和初始化过。
川峰
·
2023-12-29 16:38
Java知识笔记
java
jvm
Java对象的创建
对象头
Java对象的访问
自动内存管理——JAVA内存区域
1、运行时数据区域(JVM内存模型或JVM内存结构)运行时数据区域包括:程序计数器(PC寄存器)、虚拟机栈、本地方法栈、Java堆、方法区(运行时
常量池
是方法区的一部分)程序计数器程序计数器是当前线程所执行的字节码的行号指示器
H花花少年H
·
2023-12-28 21:02
JVM关键知识点整理,从入门到提高到实践
文章目录基础篇一、了解JVM内存结构程序计数器(线程私有)Java虚拟机栈(线程私有)本地方法栈(线程私有)方法区(线程共享)堆(线程共享)运行时
常量池
直接内存二、关于垃圾回收1.如何判断一个对象是垃圾
码拉松
·
2023-12-28 06:09
经验分享
java
jvm
Java内存溢出异常(下)
本篇文章将介绍剩余的两个溢出异常:方法区和运行时
常量池
溢出。方法区和运行时
常量池
溢出这部分为什么会放在一起呢?
bdqfork
·
2023-12-28 03:09
上一页
1
2
3
4
5
6
7
8
下一页
按字母分类:
A
B
C
D
E
F
G
H
I
J
K
L
M
N
O
P
Q
R
S
T
U
V
W
X
Y
Z
其他