zoukankan      html  css  js  c++  java
  • 常量池

    java是一种动态连接的语言,常量池的作用非常重要,常量池中除了包含代码中所定义的各种基本类型(如int、long等等)和对象型(如String及数组)的常量值还,还包含一些以文本形式出现的符号引用,比如:

      类和接口的全限定名;

      字段的名称和描述符;

      方法和名称和描述符。

    1.  Integer i1 = new Integer(1); Integer i2 = new Integer(1); i1 == i2 --->false

       Integer i3 = 1; Integer i4 = 1; i3 == i4 --->true

    2.  String s1 = new String("love"); String s2 = new String("love"); s1 == s2 --->false

       String s1 = "love" + "java"; String s2 = "lovejava"; s1 == s2 --->true

         String str1 = "love"; String str2 = "java"; String s3= s1 + s2; s1 == s3 --->false

       final String str1 = "love"; final String str2 = "java"; String s3= s1 + s2; s1 == s3 --->true (宏替换)

    java中基本类型的包装类的大部分都实现了常量池技术,这些类是Byte,Short,Integer,Long,Character,Boolean,另外两种浮点数类型的包装类则没有实现。另外Byte,Short,Integer,Long,Character这5种整型的包装类也只是在对应值小于等于127时才可使用对象池,也即对象不负责创建和管理大于127的这些类的对象。

    3.  Integer i1 = 127; Integer i2 = 127; i1 == i2 --->true

       Integer i3 = 128; Integer i4 = 128; i3 == i4 --->false

    4.  Boolean b1 = false; Boolean b2 = false; b1 == b2 --->true

    5.  Double d1 = 1.0; Double d2 = 1.0; d1 == d2 --->false

  • 相关阅读:
    华三SNMP配置详解
    华三交换机命令
    帧中继笔记
    分解企业园区网各模块所需的技术
    用 Python 写个坦克大战
    我给这个Python库打101分!
    用Python绘制一套“会跳舞”的动态图形给你看看
    Python异常处理
    python分析BOSS直聘的某个招聘岗位数据
    90行代码让微信地球转起来,太酷了!(python实现)
  • 原文地址:https://www.cnblogs.com/zawjdbb/p/6903194.html
Copyright © 2011-2022 走看看