JAVA其它几种常用类

JAVA其它几种常用类

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

开发工具与关键技术:MyEclipse 10  Java se

撰写时间:2019年0425

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

前面有对JAVA常用的String类进行了文献的总结。除它以外还有几种程序运行会用到的类,以及JAVA中对数学运算,时间日期方面提供的类方法。

与程序运行有关的System类,Runtime类。System类是JAVA程序的运行平台,在我们的编程中是不能够直接去实例化创建一个System类对象的,只能去调用System类中的变量和方法。在第一个JAVA程序打印输出System.out.println("Hello  world")语句运用了System.out标准输出方法,这里其实就已经接触到了System类的方法,其次还有System.err错误输出、System.in标准输入。另外因为该类与系统程序运行有关,首先就可以调用方法获取查看到所有的系统环境变量。这里的关键字getenv();它返回的是一个系统当前环境的字符串映射集合,即可联想到用Map集合去实例:Map<String,String> getM=System.getenv();for (String name:getM.keySet()) {System.out.println(getM.get(name));} 

除了可以获取环境变量以外,还有其他几种常见方法:获取系统属性、提醒虚拟机垃圾回收、返回时间、

返回给定对象哈希码、使虚拟机终止工作...调用形式效果如图:

Runtime类是程序运行时的环境,可让我们访问到虚拟机的相关信息,同System类一样,这样的系统类都不能自己创建实例,都是借助外力的方法来使其与对象相关联。从而调用到该对象。Runtime类的外力是getRuntime。 Runtime类既满足隐藏私有构造器private Runtime() {}、静态私有自身实例private static Runtime currentRuntime = new Runtime(),还有创建静态工厂getRuntime方法,让自身获取实例 public static Runtime getRuntime() { return currentRuntime;}。完全满足饿汉式三个条件,所以它也被称作是饿汉式单例类。

在程序中调用方法之前,最开始就需要用getRuntime来获取到系统程序关联的运行对象,语句格式和实例化对象相类似eg:Runtime test=Runtime.getRuntime();然后就可调用运行Runtime类的常用方法获取虚拟机的信息

面对有时会遇到数学复杂运算,JAVA中为此提供Math工具类。Math类除开两个类变量圆周率PI,自然对数底数E外,所有的方法都可以直接用类名来调用,因为它里面所有的方法都是静态方法。作为一个工具类,Math类构造器是私有的,所以它也是无法实例化对象。将数学的单词定义为此工具类,可想而知里面的方法都是数学知识相关。包括三角运算(角度弧度转换,正弦余弦正切,极坐标)、取整运算、指数对数运算、乘方开方、大小比较 .. 整体方法较多,其实我们知道数学中这些运算符,函数等等的运用,那Math工具类的方法名也不会陌生,遇到需要用的时候记得调用此工具类的方法进行运算,下面每个方面挑几个方法举例说明

Random类,一个伪随机数的类。是Random增强版。之所以命名为伪随机数,是因为它生成随机数与Random对象的种子和调用方法的顺序有关,在种子相同并且方法调用的顺序也一致的情况下,这时候两个输出的随机数是一样的。

接下来的是JAVA中对时间日期处理的类,Date类、Calendar类。原本对时间日期的处理只需一个Date类即可,但Date类的方法多数都是已经落后的,跟不上程序系统更新步伐的老方法。所以到现在它能用的方法、构造器很少。然后就出现了Calendar类来帮助我们完成程序编程。

想调用Calendar类中的属性方法去实现时间日期相关的操作,首先需要使用默认时区和语言环境获得一个日历。写法:Calendar C=Calendar.getInstance();然后就可以结合属性方法来获取时间,对时间日期的设定(设置时既可以一个集合包含多个元素一次性设置完成;也可以将年月日时分秒每个元素拆分开来设置)以及时间相关的运算(有add,roll。两个都是对时间上的添加操作,不同的是add增加元素后,影响的范围更大。比如用add给现在日历增加12个月,输出结果就有2020.4.27;而用roll增加的话,输出结果依旧还是2019.4.27,原因只是对月份进行加一轮回,而不影响年份 )。Date和Calendar还可以运用getTime(),setTime()相互转换。

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值