zoukankan      html  css  js  c++  java
  • 【java】Java组件概览(2)— 基本库

    1、Math

    Math相关的库包括包括浮点库(java.lang.Mathjava.lang.StrictMath)和任意精度数学(java.math包)。

    (1)java.lang.Math

      该类包含执行基本数值运算的方法,如基本指数、对数、平方根、三角函数、弧度/角度、四舍五入以及最大、最小和绝对值。

    另外,还有两个常量无理数E(e)和PI(π)。

    (2)java.lang.StrictMath

      提供的方法与Math一样。Math的方法很多都是直接调用StrictMath的实现,而StrictMath再调用本地(native)方法(StrictMath也有一部分方法调用的是Math的方法)。

    (3)java.math

      提供任意精度的Integer(BigInteger)和Decimal(BigDecimal)数的计算(如货币计算的场景),不会溢出或丢失精度。

    2、Collections

      集合相关的类,非常重要,不多赘述。

    3、Ref Objects 

      提供引用对象类,它支持与垃圾收集器的有限程度的交互。程序可以使用引用对象来维护对某个其他对象的引用,使得后者对象仍然可以由收集器回收。

      包括强引用、软引用、弱引用和虚引用。

    3、Regular Expressions

      正则表达式,包含类Pattern和Matcher。关键是正则表达式语法的熟悉,入门容易精通难。

    4、logging

      日志记录。

    5、Management

      为Java平台提供监视和管理功能。分为以下几块:

      (1)java.lang.management

        支持监视和管理Java虚拟机和底层操作系统。API使应用程序能够自我监控并使JMX兼容工具能够在本地和远程监控和管理虚拟机

        例如在应用内部可以通过其工厂类ManagementFactory获取或者推送各种运行时信息,如CPU、内存等实时状态。

      (2)com.sun.management

        是Oracle在java.lang.management基础上对平台监视和管理功能的扩展。

      (3)java.util.logging.LoggingMXBean  

        通过它可以可以检索和设置日志记录信息。

      (4)The Java Management Extensions (JMX)的API

        提供了一种利用工具本地或者远程监视和控制Java应用的方法。

        提供远程监视功能时,Java应用必须自己将待监控的资源注册到MBeanServer中,并暴露一个远程接口给工具。

       (5)Attach API 

        Oracle的平台扩展,允许将管理代理动态加载到虚拟机中。    

      6、Instrumentation

        用于检测Java编程语言应用程序 - 例如,监视它们或收集性能信息。工具用于 java.lang.instrument修改定义类的类文件 - 通常通过在方法的字节代码中插入将执行检测的附加字节代码。

        就是将你自己编写的Java类编译成jar包加载到将要启动(premain)的或者正在运行(agentmain)的JVM中(类似一个探针),这时候你的jar包就注入到这个java进程中了。你要什么数据或者功能,将其在该jar包中实现即可。

        该功能比较强大,可以达到监控和诊断的目的。但为了对原JVM中的功能不产生干扰,jar包中的类最好使用自定义的类加载器。

        现利用该技术的工具有GProfile和阿里的Arthas。

      7、Concurrency Utilities

        并发工具类。非常重要,这不做赘述。

      8、Reflection 

        这是Java语言的重要特性,是各种框架的基础。

      9、Versioning

        版本控制功能支持包级版本控制,以便应用程序和applet可以在运行时识别特定Java Runtime Environment,VM和类包的版本。

        API包含在java.lang.Class、java.lang.ClassLoader、java.lang.Package、java.lang.System中。

      10、Preferences API

        包含在java.util.prefs包中。

        它允许应用程序存储和检索用户和系统首选项和配置数据。此数据持久存储在依赖于实现的后备存储中。有两个独立的优先节点树,一个用于用户首选项,另一个用于系统首选项。

      11、JAR

        JAR(Java Archive)是一种独立于平台的文件格式,它将许多文件聚合为一个文件。多个Java小程序及其必需组件(.class文件,图像和声音)可以捆绑在一个JAR文件中,然后在单个HTTP事务中下载到浏览器中,从而大大提高了下载速度。

        JAR格式还支持压缩,这可以减小文件大小,进一步缩短下载时间。此外,applet作者可以对JAR文件中的各个条目进行数字签名,以验证其来源。它是完全可扩展的。

      12、ZIP

        提供用于读取和写入标准ZIP和GZIP文件格式。

  • 相关阅读:
    android开发布局三(微信布局)
    Android开发adb,SQLite数据库运用
    直线电机磁负荷、电负荷
    MIT公开课(一):电场和偶极子
    哈工大电气工程系硕士研究生入学复试——自动控制原理1、2章
    直线电机与旋转电机的区别
    Math类介绍
    Scala编辑器和IntelliJ IDEA开发环境配置
    减少cpu的方法
    AS内存清理,建议以及查找内存泄露的方法
  • 原文地址:https://www.cnblogs.com/tigerhsu/p/10428141.html
Copyright © 2011-2022 走看看