当前位置: 首页 > news >正文

怎么建商城网站吗网页设计实验报告3000

怎么建商城网站吗,网页设计实验报告3000,WordPress主题预览封面,匿名网站建设#x1f4da; Java 运行时常量池笔记#xff08;详细版#xff09; Java 的运行时常量池#xff08;Runtime Constant Pool#xff09;是 JVM 方法区的一部分#xff0c;用于存储编译期生成的字面量和符号引用。它是 Java 类文件常量池的运行时表示#xff0c;具有动态… Java 运行时常量池笔记详细版 Java 的运行时常量池Runtime Constant Pool是 JVM 方法区的一部分用于存储编译期生成的字面量和符号引用。它是 Java 类文件常量池的运行时表示具有动态性和共享性。 运行时常量池的核心概念 1. 什么是运行时常量池 运行时常量池是 JVM 方法区的一部分存储类文件中常量池的内容。它包含 字面量如字符串、整数、浮点数等。符号引用如类名、方法名、字段名等。 在类加载时常量池的内容会被加载到运行时常量池中。 2. 运行时常量池的特点 动态性运行时常量池的内容可以在运行时动态添加。例如String.intern() 方法可以将字符串添加到常量池中。共享性同一个类的运行时常量池可以被多个实例共享。内存分配运行时常量池是方法区的一部分方法区在 JDK 8 之前是永久代PermGen在 JDK 8 之后是元空间Metaspace。 ️ 运行时常量池的工作原理 1. 类加载时的常量池加载 当 JVM 加载一个类时会将类文件中的常量池内容加载到运行时常量池中。 2. 符号引用的解析 符号引用如类名、方法名在类加载时会被解析为直接引用如内存地址。 3. 动态添加内容 通过 String.intern() 方法可以将字符串动态添加到运行时常量池中。 运行时常量池的存储结构 #mermaid-svg-gq6dUJUFABlnmW83 {font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}#mermaid-svg-gq6dUJUFABlnmW83 .error-icon{fill:#552222;}#mermaid-svg-gq6dUJUFABlnmW83 .error-text{fill:#552222;stroke:#552222;}#mermaid-svg-gq6dUJUFABlnmW83 .edge-thickness-normal{stroke-width:2px;}#mermaid-svg-gq6dUJUFABlnmW83 .edge-thickness-thick{stroke-width:3.5px;}#mermaid-svg-gq6dUJUFABlnmW83 .edge-pattern-solid{stroke-dasharray:0;}#mermaid-svg-gq6dUJUFABlnmW83 .edge-pattern-dashed{stroke-dasharray:3;}#mermaid-svg-gq6dUJUFABlnmW83 .edge-pattern-dotted{stroke-dasharray:2;}#mermaid-svg-gq6dUJUFABlnmW83 .marker{fill:#333333;stroke:#333333;}#mermaid-svg-gq6dUJUFABlnmW83 .marker.cross{stroke:#333333;}#mermaid-svg-gq6dUJUFABlnmW83 svg{font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;}#mermaid-svg-gq6dUJUFABlnmW83 .label{font-family:"trebuchet ms",verdana,arial,sans-serif;color:#333;}#mermaid-svg-gq6dUJUFABlnmW83 .cluster-label text{fill:#333;}#mermaid-svg-gq6dUJUFABlnmW83 .cluster-label span{color:#333;}#mermaid-svg-gq6dUJUFABlnmW83 .label text,#mermaid-svg-gq6dUJUFABlnmW83 span{fill:#333;color:#333;}#mermaid-svg-gq6dUJUFABlnmW83 .node rect,#mermaid-svg-gq6dUJUFABlnmW83 .node circle,#mermaid-svg-gq6dUJUFABlnmW83 .node ellipse,#mermaid-svg-gq6dUJUFABlnmW83 .node polygon,#mermaid-svg-gq6dUJUFABlnmW83 .node path{fill:#ECECFF;stroke:#9370DB;stroke-width:1px;}#mermaid-svg-gq6dUJUFABlnmW83 .node .label{text-align:center;}#mermaid-svg-gq6dUJUFABlnmW83 .node.clickable{cursor:pointer;}#mermaid-svg-gq6dUJUFABlnmW83 .arrowheadPath{fill:#333333;}#mermaid-svg-gq6dUJUFABlnmW83 .edgePath .path{stroke:#333333;stroke-width:2.0px;}#mermaid-svg-gq6dUJUFABlnmW83 .flowchart-link{stroke:#333333;fill:none;}#mermaid-svg-gq6dUJUFABlnmW83 .edgeLabel{background-color:#e8e8e8;text-align:center;}#mermaid-svg-gq6dUJUFABlnmW83 .edgeLabel rect{opacity:0.5;background-color:#e8e8e8;fill:#e8e8e8;}#mermaid-svg-gq6dUJUFABlnmW83 .cluster rect{fill:#ffffde;stroke:#aaaa33;stroke-width:1px;}#mermaid-svg-gq6dUJUFABlnmW83 .cluster text{fill:#333;}#mermaid-svg-gq6dUJUFABlnmW83 .cluster span{color:#333;}#mermaid-svg-gq6dUJUFABlnmW83 div.mermaidTooltip{position:absolute;text-align:center;max-width:200px;padding:2px;font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:12px;background:hsl(80, 100%, 96.2745098039%);border:1px solid #aaaa33;border-radius:2px;pointer-events:none;z-index:100;}#mermaid-svg-gq6dUJUFABlnmW83 :root{--mermaid-font-family:"trebuchet ms",verdana,arial,sans-serif;} 运行时常量池 字面量 符号引用 字符串 整数 浮点数 类名 方法名 字段名 Java 示例代码 public class ConstantPoolExample {public static void main(String[] args) {String str1 hello; // 字面量直接放入常量池String str2 hello; // 从常量池中获取String str3 new String(hello).intern(); // 显式放入常量池System.out.println(str1 str2); // true指向常量池中的同一个对象System.out.println(str1 str3); // trueintern() 方法确保 str3 指向常量池} }输出结果 true true️ Go 语言模拟运行时常量池 Go 语言没有直接的运行时常量池但可以通过 map 模拟类似的功能。 1. 实现思路 使用 map 存储字符串常量。提供 intern 方法将字符串放入“常量池”并返回引用。 2. 代码实现 package mainimport (fmt )// 模拟常量池 var constantPool make(map[string]string)// 模拟 intern 方法 func intern(s string) string {if val, ok : constantPool[s]; ok {return val // 如果已存在返回常量池中的引用}constantPool[s] s // 否则放入常量池return s }func main() {str1 : hello // 字符串字面量str2 : hello // 字符串字面量str3 : intern(hello) // 显式放入常量池fmt.Println(str1 str2) // trueGo 会优化为同一个引用fmt.Println(str1 str3) // trueintern 方法返回常量池中的引用 }输出结果 true trueJava 与 Go 的对比 特性Java 运行时常量池Go 模拟常量池存储位置JVM 方法区元空间/永久代自定义 map 数据结构动态性支持动态添加如 String.intern()通过 map 动态管理共享性同一个类的运行时常量池共享通过全局 map 实现共享语言特性JVM 提供原生支持需要手动实现 总结 Java 运行时常量池是 JVM 的重要组成部分提供了动态性和共享性适合在运行时管理常量。Go 语言虽然没有直接的运行时常量池但可以通过 map 等数据结构模拟类似的功能。两者的实现机制不同但核心思想一致通过共享常量减少内存开销提高性能。 通过本文的学习你可以深入理解 Java 运行时常量池的原理并掌握如何在 Go 中模拟类似的功能。希望这篇笔记对你有帮助
http://www.dnsts.com.cn/news/198102.html

相关文章:

  • 上海公司网站建设pageadmin是免费的吗
  • 网站绩效营销北京网站建设net2006
  • php网站开发基础教程做标书有什么好的网站吗
  • 谈谈设计和建设网站体会只想怎样建设自己的销售网站
  • 长沙百度网站推广公司优化网站公司价格是多少钱
  • 做网站销售提成怎么算wordpress实现微信登录
  • 比较好的ui设计网站seo网站编辑
  • 中国建设教育协会是什么网站wordpress个性标签
  • 做公司网站阿里在线制作公司网站
  • 网页网站建设的ppt在线做网站图标
  • 化妆品网站程序网网站制作开发
  • 用wordpress开发网站淘宝客做网站还是做app
  • 做微网站哪家好校园网站建设结论
  • wordpress 开发插件搜索引擎优化简称
  • 专门设计的网站找人做微信网站
  • 门户网站的传播特点企业网络营销活动
  • 网站建设的基本知识kingcms 暂未创建网站首页
  • 网站建设太仓上海企业扶持政策
  • 30岁转行做网站设计深圳电器公司怎么样
  • 手机端快速建站工具计算机软件培训机构课程
  • 网站低保图用什么做南昌建设医院网站
  • 网站的动态图怎么做的国家建设标准发布网站在哪里
  • 上海做网站的公司网站美工设计收费
  • 海南网站开发网站的作用有哪些
  • wordpress网站怎么进去济南建设集团网站
  • cp网站建设北京信息维护公司
  • 天津网站建设要多少钱鞍山抖音seo新闻
  • 镇江网站开发个人申请域名能干什么
  • 如何做品牌运营与推广南京网站优化建站
  • 石家庄网站设计网络策划方案