1 基本数据类型的包装类                               &n            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2024-07-17 12:57:49
                            
                                176阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            目录什么是常量和常量值常量值整型常量值实型常量值布尔型常量值字符型和字符串常量值常量常量池常量池形态静态常量池运行时常量池常量池的好处常量池的位置通过例子了解常量池 什么是常量和常量值常量是指在程序的整个运行过程中值保持不变的量。在这里要注意常量和常量值是不同的概念,常量值是常量的具体和直观的表现形式,常量是形式化的表现。通常在程序中既可以直接使用常量值,也可以使用常量。通常也有把常量值和常量统            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2023-08-02 15:53:26
                            
                                124阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            一、静态常量池所谓静态常量池,即*.class文件中的常量池,class文件中的常量池不仅仅包含字符串(数字)字面量,还包含类、方法的信息,占用class文件绝大部分空间。 这种常量池主要用于存放两大类常量:字面量(Literal)和符号引用量(Symbolic References),字面量相当于Java语言层面常量的概念,如文本字符串,声明为final的常量值等,符号引用则属于编译原理方面的概            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2024-05-15 09:06:57
                            
                                50阅读
                            
                                                                             
                 
                
                                
                     
                                    
                             
         
            
            
            
            前言对常量池的理解之前,需要熟悉的是一些术语:字面量在计算机科学中,字面量(literal)是用于表达源代码中一个固定值的表示法(notation)。几乎所有计算机编程语言都具有对基本值的字面量表示,诸如:整数、浮点数以及字符串;而有很多也对布尔类型和字符类型的值也支持字面量表示;还有一些甚至对枚举类型的元素以及像数组、记录和对象等复合类型的值也支持字面量表示法。C语言关于复合字面量的介绍可参考:            
                
         
            
            
            
                   首先,理解下啥子叫常量池, 常量池是一个放入数据的一个堆(JDK1.8中), 如果是重新创建一个相同的数据,则把引用指向常量池. 大致可以这么理解.       常量池要划分的话,那么可以划分为静态常量池和运行时常量池。注意:静态常量池再运行时也会写入到运行时的常量池                 
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2023-07-21 22:45:36
                            
                                111阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            Java常量池常量池:用于存放编译期间生成的各种字面量和符号引用字面量:由字母数字等构成的字符串或数值常量,如int a = 1中 1就是字面量符号引用:编译原理中的概念;是相对直接引用来说的,主要包括三类常量类和接口的全限定名,字段的名称和描述符方法的名称和描述符这些常量池现在都是静态信息,只有运行时被加载到内存后,这些符号才有对应的内存地址信息;就变成了运行时常量池,在程序加载或运行时会被转变            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2024-04-09 13:04:42
                            
                                59阅读
                            
                                                                             
                 
                
                                
                     
                                    
                             
         
            
            
            
            1、常量字面量包括:1.文本字符串 2.八种基本类型的值 3.被声明为final的常量等;符号引用包括:1.类和方法的全限定名 2.字段的名称和描述符 3.方法的名称和描述符。2、常量池分类类文件常量池:又称为静态常量池,存储区域在堆中,编译时产生对应的class文件,主要包含字面量和符号引用;运行时常量池:存在元数据(Meta Space)空间,JVM运行时,在类加载完成后,将每个class常量            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2023-07-17 12:09:29
                            
                                92阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            申明一点:String Pool是对应于在Constant Pool中存储String常量的区域.习惯称为String Pool,也有人称为String Constant Pool.   1. 首先String不属于8种基本数据类型,String是一个对象。     因为对象的默认值是null,所以String的默认值也是null;但它又            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2023-11-15 10:38:00
                            
                                49阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            JVM 内存区域结构常量池的划分Class 文件常量池运行时常量池字符串常量池1. Class 文件常量池Class 文件常量池指的是编译生成的 class 字节码文件,其结构中有一项是常量池(Constant Pool Table),用于存放编译期生成的各种字面量和符号引用,这部分内容将在类加载后进入方法区的运行时常量池中存放。什么是字面量和符号引用?字面量是指字符串字面量和声明为 final            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2024-04-01 16:21:02
                            
                                38阅读
                            
                                                                             
                 
                
                                
                     
                                    
                             
         
            
            
            
            常量 1、常量:一种不会修改的变量 -java没有constant关键字 -不能修改,final -不会修改/只读/只要一份,static -方便访问public public class StaticBlock {
 public final static double pi=3.14;
 public static final String country=“China”;
 public s            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2023-11-28 09:29:49
                            
                                63阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            常量池在java用于保存在编译期已确定的,已编译的class文件中的一份数据。它包括了关于类,方法,接口等中的常量,也包括字符串常量,如String s = "java"这种申明方式;当然也可扩充,执行器产生的常量也会放入常量池,故认为常量池是JVM的一块特殊的内存空间。上面是百度常量池的解释。一开始不太懂,后来又去各大IT网站去搜索了一番。通过一些代码,稍微理解了点,如有不对,请不吝指正!首先:            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2023-07-18 20:04:14
                            
                                104阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            图解一、常量池分类Java中的常量池分为:Class文件常量池、运行时常量池、全局字符串常量池、基本类型包装对象常量池1.1Class文件常量池class文件是一组以字节为单位的二进制数据流,在java代码的编译期间,我们编写的Java文件就被编译为.class文件格式的二进制数据存放在磁盘中,其中就包括class文件常量池,class文件常量池在在编译阶段就已经确定。既然是常量池,那么里面存放的            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2023-09-21 19:48:59
                            
                                121阅读
                            
                                                                             
                 
                
                                
                     
                                    
                             
         
            
            
            
            1.简介特指运行时的常量池,存放在内存的方法区的中。一个JVM只有唯一的一个常量池,各线程共享该常量池;保存了在编译期间就已经确定的数据。包括final常量值(局部常量、成员常量以及引用常量)和对象字面值;在编译期间,每当给常量赋值时,它就会去检测常量池中是否存在该值。若存在,直接返回该值的地址给常量;若不存在该值,则会在常量池中创建该值,并把该值的地址返回给常量;注意:常量池中不会存在相等的值。            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2023-08-18 14:55:10
                            
                                75阅读
                            
                                                                             
                 
                
                                
                     
                                    
                             
         
            
            
            
            创建String 对象的方式直接通过字符串常量创建String a="a";New一个String对象String a=new String("a");jvm字符串常量池字符串的分配和其他对象分配一样,是需要消耗高昂的时间和空间的,JVM为了提高性能和减少内存的开销,在实例化字符串的时候进行了一些优化:使用字符串常量池:每当我们创建字符串常量池时,JVM会首先检查字符串常量池,如果该字符串已经存在            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2023-10-02 12:04:08
                            
                                93阅读
                            
                                                                             
                 
                
                                
                     
                                    
                             
         
            
            
            
            学习JVM的时候经常会遇到各种常量池,不同版本的JDK它们的存储位置也不同,这篇随笔就整理下几种常见的常量池,以JDK1.8为主。先看一张存储示意图,里面涉及1.8和1.6。 常量池是存储在方法区中的,比如我们有这样一段代码:public class Demo {
    public static void main(String[] args) {
        System.ou            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2023-09-07 20:43:46
                            
                                118阅读
                            
                                                                             
                 
                
                                
                     
                                    
                             
         
            
            
            
            常量池: 静态常量池:指的是编译时常量池,我们不关注 字符串常量池:在java8之后放在了堆里 运行时常量池:放在了元空间里,元空间放在了主存里(不在堆里了,不占有jvm内存空间)使用字符串常量池(也就是当我们用类似String a = “xiaoming”;)。每当我们创建字符串常量时,JVM会首先检查字符串常量池,如果该字符串已经存在常量池中,那么就直接返回常量池中的实例引用。如果字符串不存在            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2023-08-18 16:52:39
                            
                                93阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            常量池的定义
常量池在java用于保存在编译期已确定的,已编译的class文件中的一份数据。它包括了关于类,方法,接口等中的常量,也包括字符串常量,如String s = “java”这种申明方式;当然也可扩充,执行器产生的常量也会放入常量池,故认为常量池是JVM的一块特殊的内存空间。            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2023-05-22 22:20:49
                            
                                117阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            一:栈,堆以及常量池的概念:                                                     &n            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2023-08-23 21:03:57
                            
                                78阅读
                            
                                                                             
                 
                
                                
                     
                                    
                             
         
            
            
            
            Java常量池关系图Java常量池Java常量池是Java编译器在编译Java源代码时,为了优化性能和节省空间所创建的一种常量缓存机制。它包含了所有的基本数据类型、字符串常量、符号引用等常量,这些常量都是在编译期被确定下来的,并被存储在.class文件的常量池中。在Java程序运行时,当需要使用这些常量时,就可以直接从常量池中取出,而不需要再进行计算或创建对象,从而提高了程序的运行效率。同时,Ja            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2023-07-16 02:13:13
                            
                                87阅读
                            
                                                                             
                 
                
                                
                     
                                    
                             
         
            
            
            
            在JAVA SE的学习中遇到关于常量池的一些总结在学习JAVA的时候,特别是学到JVM的时候,常量池的存在感觉有些颠覆认知,所以总结一下自己的看法,有不对的地方,希望大佬指正常量池的定义顾名思义,常量池即存放常量的内存空间,常量分为两种: 1 基本数据类型如“11”,“a”, 2 final修饰并赋值后的量常量池的位置JDK1.7以前,常量池位于方法区 JDK以后,常量池移入堆常量池的作用1 节省            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2023-09-01 11:15:57
                            
                                88阅读