关于java中string的内存位置

news/2024/7/6 1:42:14 标签: java

java运行时内存分五部分:

  线程共享:堆内存、方法区(包括常量池)

  线程私有:栈内存、本地方法栈、程序计数器

 

string不是基本数据类型,那么一个string的内存位置是什么呢?一共有两种情况:

  1、string直接赋值:

    String s = "haha";

    s的引用存在栈内存中,引用指向的haha存在方法区的常量池中(先判断常量池中是否有一个haha,存在则直接指向)

  2、string对象new创建

    String s = new String("haha");

    s的引用存在于栈内存中,引用指向的haha对象,存在堆内存中(每new一次,在堆中创建一个新的haha对象)

 

总结:

  1、string类型的引用,都是存在栈内存中的;

  2、string引用指向,直接赋值存在栈内存,new出来的存在栈内存。

转载于:https://www.cnblogs.com/guoliangxie/p/7238907.html


http://www.niftyadmin.cn/n/1382686.html

相关文章

eslint的几种检测级别-syntax、problem、code style

JS作为一门动态类型的语言,在给开发者带来便利的同时,也不可避免的引起一些潜在问题。简单来说,它需要你在编程的时候充分的了解当前对象是否有你要使用的方法或者属性。 然后人脑毕竟是有限的。所以就需要一些手段帮你找到潜在的问题。这种…

配置fileupload(文件上传组件)

<properties><commons-fileupload.version>1.3.1</commons-fileupload.version> </properties><dependencyManagement><dependencies><!-- 文件上传组件 --><dependency><groupId>commons-fileupload</groupId>&l…

Docker逻辑数据流

最近在研究Docker,一种新的轻型虚拟化技术&#xff0c;个人觉得这是以后虚拟化的方向。从目前企业级及开源社区关于虚拟化的应用及关注方向&#xff0c;大多数使用重虚拟化技术&#xff0c;即在Hypervisor上为每个应用虚拟guest OS,对于guest OS&#xff0c;除了应用程序需要使…

PHP 的 preg_match 和 preg_match_all

preg_match为仅输出一个匹配结果 preg_match_all为输出全部匹配结果 <?php $tt<img src"/GTicket/Public/kindeditor/php/../attached/image/20160510081224_31958.png" alt"" /> <img src"http://s1.dwstatic.com/group1/M00/8F/DF/923…

MS MDS系列之MDS层次结构(Hierarchy)

在Master Data Services中&#xff0c;Hierarchy的作用主要用于&#xff1a; 对同属性成员进行分组聚合成员用于分析和报告输出写在开始&#xff1a;显示层次结构&#xff08;Explicit Hierarchy&#xff09;即将在新版本中不再应用了。应该是2016。如果还在用之前的版本&#…

TypeScript-Lookup Types - Cannot access ‘xxx‘ because ‘xxx‘ is a type, but not a namespac

如果我想希望使用某种类型声明的子类型作为某个变量声明的类型… export interface Car {Name: string;Speed: number;Manufactured: number; }const Speed: Car.Speed 200;上面的写法会抛出错误 Cannot access ‘Car.Speed’ because ‘Car’ is a type, but not a namespac…

玩转Go语言之结构体

结构体//定义结构体类型 type Person struct {name stringage intheight float64 }//定义结构体变量 var student Person//给结构体属性赋值 student.name "zhangsan" student.age 20 student.height 170.0//打印结构体 Println(student)复制代码总结:1.Go语言中的…

[na]二层+tcp/udp数据包格式

标准&#xff1a;6623 17 3 思科&#xff1a;6623320 6 ip首部格式 tcp首部格式 转载于:https://www.cnblogs.com/iiiiher/p/5480947.html