`
街角处
  • 浏览: 24576 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类
最新评论

jdk源码分析之Number抽象类

 
阅读更多
1)关于Number类
  位置:java.lang包 
  类型:抽象类
  实现接口:java.io.Serializable
  构造方法:系统生成的默认的构造函数。
  Number类是 BigDecimal、BigInteger、Byte、Double、Float、Integer、Long 和 Short 类的超类
  Number 的子类必须提供将表示的数值转换为 byte、double、float、int、long 和 short 的方法。
2)方法
  1)intValue()
    抽象方法
    以int形式返回指定的数值。
    注意:这可能会涉及到舍入或取整
  2)longValue()
    抽象方法
    以long形式返回指定的数值。
    注意:这可能会涉及到舍入或取整
  3)floatValue()
    抽象方法
    以float形式返回指定的数值。
    注意:这可能会涉及到舍入
  4)doubleValue()
    抽象方法
    以double形式返回指定的数值。
    注意:这可能会涉及到舍入
  5)byteValue()
    普通方法
    以byte形式返回指定的数值。
    注意:直接将intValue()的返回值强制转换成byte类型,这可能会涉及到舍入或取整
    int类型的变量转换成byte的转换方式是:int类型变量的值模byte的取值范围的余数
    例如:int num = 258;
      byte b = (byte)num
             = 258%128=0余2
                 = 2
   
         int num = 258;
	 byte b = (byte)num;
	 System.out.println(b);
     

    
2

     
  6)shortValue()
    普通方法
    以short形式返回指定的数值。
    注意:直接将intValue()的返回值强制转换成short类型,直接截取。
   
  int num1 = 32770;
	 System.out.println(Integer.toBinaryString(num1));
	 short s = (short)num1;
	 /**
	  * 32770转换成二进制为:00000000_00000000_10000000_00000010
	  * 强制转换为short类型 将00000000_00000000直接截取剩下10000000_00000010 为负数的补码
	  * 转换成负数 10000000_00000010减1为 10000000_00000001 取反为11111111_11111110 转换成二进制为-32766
	  * */
	 System.out.println(s);
     

    
     -32766
     


分享到:
评论

相关推荐

    jdk源码 jdk源码

    Java Development Kit (JDK) 源码是学习和理解Java平台核心机制的关键资源。它包含了许多关键组件的源代码,使开发者能够深入探索Java语言的底层实现,从而提升编程技巧,优化性能,并理解标准库的工作原理。在这个...

    jdk源码(完整版)

    **Java Development Kit (JDK) 源码详解** JDK,即Java Development Kit,是Java编程语言的核心组件,包含了编译器、运行时环境、工具集和其他必要的资源,用于开发和运行Java应用程序。这里提到的"jdk源码(完整版...

    自己重新编译的jdk源码jar包

    对于想了解JDK源码的朋友来说,通过调试JDK源码来学习是一个常用的方法。但是默认的情况下eclipse是不支持进入jdk源码中进行调试和显示当前变量的。 我们要明白在jdk中,sun对rt.jar中的类编译时,去除了调试信息,这样...

    jdk 源码 完整版

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

    JDK源码阅读笔记

    JDK源码阅读笔记

    关于jdk动态代理的源码剖析

    ### 关于JDK动态代理的源码剖析 #### 一、引言 在Java开发过程中,动态代理技术是一项非常实用的技术,它可以帮助我们实现在不修改原有代码的基础上为方法增加额外的功能,比如日志记录、权限校验等。本文将深入...

    JDK源码阅读笔记LearningJDK

    JDK源码阅读笔记

    jdk-8u60源码

    最后,`.jcheck`可能是源码静态分析工具的输出或配置,这类工具用于检查源码质量,发现潜在的错误和不符合编码规范的地方。了解这些工具的使用,可以帮助我们在开发过程中保持代码的整洁和一致性。 总的来说,深入...

    java JDK 源码

    Java JDK源码是Java开发工具包的原始代码集合,它为开发者提供了深入理解Java平台工作原理的机会。JDK源码包含了许多核心类库,如`javax`、`com`、`org`、`java`以及`launcher`和`sunw`等包下的类和接口。这些源文件...

    JDK源码选读

    8. **异常处理**:JDK中的`java.lang.Throwable`类是所有异常的基类,源码分析能让我们了解异常的层次结构和捕获、处理机制。 9. **并发工具**:`java.util.concurrent`包提供了高级并发工具,如`ExecutorService`...

    jdk6 源码 SRC

    jdk6 源码jdk6 源码jdk6 源码jdk6 源码jdk6 源码jdk6 源码

    JDK源码,整合所有内容

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

    jdk1.8 源码中文版,jdk直接显示中文注释

    下载后直接去本机jdk目录里替换jdk中的src.zip 再打开idea就能看到中文版的源码注释 示例 https://blog.csdn.net/a7459/article/details/106495622

    jdk源码包jdk-11.0.1

    【描述】"jdk源码包"意味着这个压缩文件包含了Java开发工具集(JDK)的所有源代码。通过分析这些源码,开发者可以学习到Java语言的内部工作原理,包括类库、虚拟机(JVM)以及各种工具的实现细节。 【标签】"jdk"和...

    深入浅出JDK源码

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

    java的jdk源码包

    第一步:安装完jdk之后,打开jdk所在目录,里面有个src.zip,这就是此jdk的所有源码 第二步:找到之后我们开始导入,选中项目点击右键,选中Build Path栏中的Configure Build Path,在Libraries中我们打开JRE ...

    JDK8完整源码包

    这份"JDK8完整源码包"包含了JavaFX、Sun私有实现等核心组件的源代码,为深入理解Java平台的工作原理提供了宝贵的资源。 首先,JavaFX是Java的图形用户界面(GUI)库,自JDK 8起成为标准部分,它提供了丰富的UI组件...

    JDK中文源码

    JDK源码,JDK源码,JDK源码,JDK源码,JDK源码,JDK源码,JDK源码

    jdk1.6 源码jdk1.6 源码

    4. **多线程**:JDK 1.6支持多线程编程,源码中包括了`Thread`类和`synchronized`关键字的实现,以及线程同步机制如`wait()`, `notify()`, `notifyAll()`。 5. **I/O流**:在`java.io`包中,你可以看到文件读写、...

    jdk源码-补充缺少sun包下的源码

    《深入解析JDK1.7源码:补全sun包下的源码》 在Java开发过程中,理解JDK源码是提升技术深度的关键步骤。JDK1.7版本的源码提供了对Java语言核心库的深入洞察,而sun包下的源码更是其中的重要组成部分,因为它们包含...

Global site tag (gtag.js) - Google Analytics