`

JDK源码分析-String

    博客分类:
  • jdk
jdk 
阅读更多
java中基本类型、指针是存放在栈中,new 对象是存放在堆中,唯一不同的是String类型的数据存放在:常量池中
一个初始时为空的字符串池,它由类 String 私有地维护
当调用 intern 方法时,如果池已经包含一个等于此 String 对象的字符串(该对象由 equals(Object) 方法确定),则返回池中的字符串。否则,将此String 对象添加到池中,并且返回此String 对象的引用
String 源码:
       public final class String
    implements java.io.Serializable, Comparable<String>, CharSequence {
    /** The value is used for character storage. */汉化一下:这个value是用来装char的.明白了吧,String其实是char数组的包装类。
    //而这个数组是final类型的,不可能指向别的对象,但是可以改,这个请耐心看下去
    private final char value[];
    /** Cache the hash code for the string */缓存hashCode
    private int hash; // Default to 0
}

StringBuilder:
Stringbuffer每个方法均用到了同步
分享到:
评论

相关推荐

    jdk-code-any:jdk源码分析

    【标题】"JDK源码分析" 在Java开发领域,深入理解JDK源码是提升技术能力的关键步骤。JDK,即Java Development Kit,是Java编程语言和平台的基础,包含了编译器、运行时环境(JVM)、类库以及各种工具。通过分析JDK...

    javajdk1.8源码-Java-source-reading:jdk1.8源代码分析

    java jdk1.8 源码 Java-source-reading 缓慢更新一些个人学习java相关源码过程中的笔记,在这里你将不可避免地看到以下情况: ...String java.util Arrays ArrayList LinkedList HashMap HashSet LinkedHashMap

    javajdk源码学习-JavaResources:jdk源码学习

    I/O包括流、缓冲区、字符编码等,源码分析有助于优化读写效率。反射机制让我们能在运行时动态访问类的信息和调用方法,这对于插件化、元编程等场景十分有用。异常处理则涉及`try-catch-finally`语句和异常链,源码...

    javajdk源码学习-JavaSourceLearn:Jdk源码学习

    Java JDK源码学习是深入理解Java编程语言的关键步骤,它能帮助开发者更好地了解Java平台的工作原理,提升编程技能,优化代码质量。系统开源意味着我们可以直接查看和研究Java的原始实现,这对于技术研究、问题调试...

    jdk 源码 完整版

    这些API在实际开发中应用广泛,源码分析有助于开发者掌握更高级的编程技巧。 `com`、`org`这两个包则通常用于组织第三方库和开源项目。例如,`com.sun`包中包含了Sun Microsystems公司(现已被Oracle收购)开发的...

    jdk-source-analysis:java jdk源代码分析-java source code analysis

    《深入解析JDK源代码:Java JDK源代码分析》 JDK,全称为Java Development Kit,是Java编程语言的核心组成部分,包含了编译器、运行时环境以及各种API。本项目专注于JDK 1.8版本的源代码分析,旨在帮助开发者更深入...

    Collections源码java-jdk1.8-source-analysis:Java8源码分析,J.U.C、ThreadPool、Col

    JDK1.8源码分析 导入源码过程中的注意事项 JDK1.8对应JDK版本下载: 提取码:49wi 源码在src目录下 以下两个类手动添加的,解决编译过程中该包的丢失 sun.font.FontConfigManager sun.awt.UNIXToolkit 其中: 1.请...

    java入门程序员必备jdk安装包--java.rar;该文件已安装好,解压后配置环境变量就可以

    2. 编译源码:在命令行中,进入源代码所在的目录,然后输入`javac HelloWorld.java`,这将生成一个"HelloWorld.class"字节码文件。 3. 运行程序:输入`java HelloWorld`,屏幕上将显示"Hello, World!",标志着你成功...

    javajdk8源码-JDKComment:阅读学习JDK源码,分析代码添加注解

    Java JDK8 源码分析 Java JDK (Java Development Kit) 是 Java 语言的核心组成部分,包含了一组开发和运行Java应用程序所需的工具和库。JDK8是Java发展的一个重要里程碑,引入了许多新特性,比如Lambda表达式、...

    javajdk源码学习-javaSource:JDK源码学习

    通过阅读和分析JDK源码,我们可以提高编程技能,解决复杂问题,并更好地应对性能优化挑战。这个过程不仅可以帮助我们理解Java平台的运作,也能使我们在日常开发中更加得心应手。在"javaSource-master"这个压缩包中,...

    JDK源码,整合所有内容

    - **对象和类**:Java是面向对象的语言,类是其核心,JDK源码中包含了大量内置类,如`Object`、`String`、`Exception`等。 - **接口与多态**:`interface`定义了类的行为规范,多态性是Java的一大特性,体现在方法...

    JDK10-13.zip

    - 引入了模块系统(Project Jigsaw)的一部分,引入了模块化源码结构,加强了Java平台的安全性和可维护性 - 引入了线程局部变量的共享(Thread-Local Handshakes),提高了多线程应用的控制能力 - 新增了HTTP...

    jdk8-source-code:jdk源码解析

    jdk1.8-source-analysis JDK1.8源码分析引入原始过程中的注意事项JDK1.8对应JDK版本下载: 码:49wi原始码在src目录下以下两个类手动添加的,解决编译过程中该包的丢失sun.font.FontConfigManager sun.awt....

    深入浅出JDK源码

    10. **性能优化**:书中可能会介绍如何通过分析JDK源码来找出性能瓶颈,并提供优化建议,例如通过JVM调优参数调整内存配置,或者使用并发工具进行性能提升。 以上只是部分可能涵盖的内容,实际书籍可能还涉及更多的...

    jdk1.8-source-analysis:JDK1.8源码分析

    jdk1.8-source-analysis JDK1.8源码分析引入原始过程中的注意事项JDK1.8对应JDK版本下载: 码:49wi原始码在src目录下以下两个类手动添加的,解决编译过程中该包的丢失sun.font.FontConfigManager sun.awt....

    jdk源码的另一部分

    源码分析是提升Java编程技能的关键步骤,它能帮助我们理解语言的底层机制,提高解决问题的能力。 "javax"和"java"这两个目录在JDK源码中分别代表了不同的包。"javax"包通常包含了扩展的Java API,这些API可能并非...

    javajdk源码-java8-source-code-learning:Java8JDK源代码分析

    Java 8 JDK源代码分析是深入理解Java编程语言的关键步骤,因为源代码揭示了语言的内部工作机制。在本文中,我们将探讨Java 8中的主要新特性,并通过源代码解析来理解这些特性的实现原理。 1. **Lambda表达式**: ...

    javajdk8源码-jdk8-sourcecode-read:jdk8的java源代码

    通过阅读和分析这些源代码,开发者可以深入了解Java语言的设计哲学,学习如何使用新特性和优化现有代码。此外,源代码中的注释和实现细节有助于提升开发者对Java内存模型、多线程、反射、类型推断等高级概念的理解。

    jdk1.8-source-analysis:Java 8源码分析,JUC,ThreadPool,Collection

    JDK1.8源码分析 引入原始过程中的注意事项 JDK1.8对应JDK版本下载: 码:49wi 原始码在src目录下 以下两个类手动添加的,解决编译过程中该包的丢失 sun.font.FontConfigManager sun.awt.UNIXToolkit 其中:1.请...

Global site tag (gtag.js) - Google Analytics