【java】Java组件概览(2)— 基本库

摘要:
API使应用程序能够监视自己,并使JMX兼容工具能够在本地和远程监视和管理虚拟机。例如,在应用程序中,可以通过其工厂类ManagementFactory获取或推送各种运行时信息。(4) Java管理扩展(JMX)API提供了一种使用工具在本地或远程监视和控制Java应用程序的方法。Java应用程序必须在MBeanServer中注册要监视的资源。

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文件格式。

免责声明:文章转载自《【java】Java组件概览(2)— 基本库》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇Aspose.Words转换为PDF的时候字体丢失的问题解决jmeter服务器监控插件下载配置下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

webpack2.x基础属性讲解

webpack作为构建工具平时作为前端作为优化、模块编程、和分片打包的重要组成部分,大家可能并不陌生,如果没有时刻的去关注文档,那么大家可能不太清楚webpack已经默默然的升级到2.x了,对比1.x版本,webpack2的文档结构和代码提示都非常友善。 webpack从1.x升到2版,并没有作为大的更改改动,而且内部的接口文档形式也与1基本无修改,那么对...

adb logcat的命令行开启和关闭

Windows上: 通过cmd: 开启:adb logcat > 文件完整路径 关闭:taskkill /F /IM adb.exe Linux上: 开启:adb logcat > 文件路径 关闭:kill -9 $(ps aux | grep "adb logcat" | sed -n 1p | awk '{print $2}')...

C#中web项目使用log4net日志

  我准备把log4net的实现方法放在一个类库项目中,别的项目直接引用该类库,即可进行日志的记录,操作步骤如下: 1.下载log4net.dll文件 2.在解决方案下创建类库项目 3.把log4net.dll添加到上面创建的类库引用中 4.在web项目下,创建单独的log4net配置文件(当然,也可以写在web.config里),配置文件的内容如下 &...

禁止crontab -r清空定时任务列表误操作

关于crontab 1、附件cron.sh放/usr/bin目录下面 2、在/etc/bashrc文件末尾添加 alias crontab='/usr/bin/cron.sh'  或者在当前root用户下在~/.bashrc文件末尾添加:alias crontab='/usr/bin/cron.sh'  ==========================...

iOS性能优化之内存管理:Analyze、Leaks、Allocations的使用和案例代码

最近接了个小任务,和公司的iOS小伙伴们分享下instruments的具体使用,于是有了这篇博客...性能优化是一个很大的话题,这里讨论的主要是内存泄露部分。 一. 一些相关概念 很多人应该比较了解这块内容了...可以权当复习复习... 1.内存空间的划分: 我们知道,一个进程占用的内存空间,包含5种不同的数据区:(1)BSS段:通常是存放未初始化的全局变...

vb添加GIF动态图片

        众说周知,GIF格式动画文件具有小巧、制作方便等特点,因此在网上得到广泛应用,在vb的picturebox和image控件添加图片后变成静止的了,这给我们设计VB应用程序带来了不便。原来以为实现起来特别的麻烦,又要注册控件,还得添加部件。通过学习方法特别很多,而且并没有多麻烦: 一、最简单的方法 1、在picturebox控件中添加gif格式...