java类库支持_第十二章:开发支持类库

UUID类

UUID(since 1.5   java.util.UUID)是一种生成无重复字符串的程序类,这种程序类的主要功能是根据时间戳实现一个自动的无重复的字符串定义。所谓的无重复只出现概率很低,有可能是千万亿分之一。’

0b84f868b8d73734afa1d674ba197bcf.png

一般在获取UUID的时候往往都是随机生成一个内容(不用它的构造方法),所以可以通过如下方式获取:

ad156cf9a1a32e236b83e16254af9f31.png

在对一些文件进行自动命名处理的情况下,UUID类型非常好用,当你在网上盗取一些图片的时候往往图片的名字就是UUID生成的

Optional类(since 1.8  新类java.util.Optional)

Optional类的主要功能是进行null的相关处理,在以前进行程序开发的时候,如果为了防止程序之中出现空指向异常,往往会追加有空的验证。

3835697a2baccbbf79351e57e84be81a.png

传统的引用传递是一种被动的组成,在引用接收的一方往往都是被动的进行判断,所以为了解决这种被动的处理操作,在Java类中提供有一个Optional类,这个类可以实现null的处理操作,在这个类里面提供有如下的一些操作方法

1e2242ad6f6674c5e585a5cb299df5d0.png 

23a081f5a8450fb01d252bb41eacab91.png

138e495e30333397fd40880887c00b2d.png如果说现在保存的内容是null,则就会在保存处出现异常

6394e26709d4c2f7f5f1436a40e5f884.png

由于Optional类中允许保存有null的内容,所以在数据获取的时候也可以进行null的处理。但是如果为null,在使用get获取数据的时候就会出现“

bde6f1d6e21a79952510fc241ac76224.png

的异常信息,所以此时可以更换为orElse()方法。

109e28b25e5b8496952bb3c82adc7a1b.png 

e1dc98c958b2f37c4c43f2ae1b0d0180.png

在所有引用数据类型的处理之中,null是一个重要的技术问题,所以JDK1.8后提供的这个新的类对于null的处理

很有帮助,同时也是日后在进行项目开发之中使用次数很多的一种程序类。所以一定要理解它是怎么回事。

ThreadLocal类(至关重要的类,解决了核心资源与多线程并发访问的处理情况)

在真正去了解ThreadLocal类作用的时候下面编写一个简单的程序做一个简单的程序进行分析。

定时调度(base模块     java.util.Timer    java.util.TimerTask)

java.util包里面牵扯太多的数据结构的问题了,这个包中的类要是全部掌握透彻了,面试只有自己面别人的份,大部分程序都干写。

TimerTask实现了Runnable接口,所以多线程的操作其实就是一个定时任务,每个任务就是一个线程,

4563c6a99e6bea7ed2d79a9bcd3f1bf0.png

定时器的主要操作是进行定时任务的处理,就好比你们每天早晨起来的铃声不一样。在java里面提供有定时任务的支持,但是这种任务的处理只是实现了间隔触发的操作(比喻一一个闹钟12个小时,一个小时响一次,不能做到准时的几点几分去响)。

如果要想实现定时的处理操作主要需要有一个定时操作的主体类,以及一个定时任务的控制。可以使用两个类实现:

2d326f90bbdcb2c91e6559453c29c62e.png

|-间隔触发:public void scheduleAtFixedRate(TimerTask task,long delay,long period)

0ff4b0e0933f020ba49eab3d25909174.png

定时任务在Timer和TimerTask中的确可以实现,但是这种实现可以有一点点麻烦的。如果你现在希望它在某年某月某天的某一时刻执行,要想做到这样的间隔触发麻烦(比如每年的1月1日清空所有记录)。定时任务是java底层提供的操作,它能实现的关键的依据是电脑中的时钟(时钟的出现是让计算机质飞跃的一大重要因素,电脑关机的时候依然可以准确的计时,它有一个时钟器)。

这种定时是由JDK最原始的方式提供的支持,但是实际上开发中利用此类方式进行的定时处理实现的代码会非常的复杂,后面会接触到一些更加专业性的定时调度组件

Base64加密与解密(Base64加密工具处理类)

正常来讲加密基本上永远都要伴随着解密,所谓的加密或者是解密往往都需要有一个所谓的规则(模仿游戏电影)。在JDK1.8开始(1.6的api查不到)提供有一组新的机密处理操作类,Base64处理,在这个类里面有两个内部类:

43f78d487f63e77ed9b016d60a040f66.png

34ed71ccf74933c562112a9a3c73064e.png

虽然Base64可以实现加密与解密处理,但是其由于是一个公版的算法,所以如果直接对数据进行加密往往并不安全,那么最好的做法是使用 盐值 操作。

0bc2201603906d2bc0a3dc7df06baa23.png

现在觉得虽然加了盐值,但是盐值毕竟是明文还是觉得不安全。

即便现在有盐值实际上发现加密的效果也不是很好,最好的做法是多次加密

3cfb339c9ba6c12d3afe8121f9fc633e.png

最好的做法是使用2-3种加密程序,同时再找到一些完全不可解密的算法。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: Java 1.6.0_20 是 Java 的一个版本,发布于2009年6月。这个版本是 Java SE 6 的更新版本之一,修复了一些之前版本的错误和漏洞。 Java 1.6.0_20 引入了一些新功能和改进,包括性能提升和更好的稳定性。它还包含了一些新的 API 和工具,以帮助开发人员更轻松地开发和调试 Java 应用程序。 在 Java 1.6.0_20 中,一些特性已经被弃用或移除,因为它们已经过时或不再被推荐使用。开发人员需要注意这些变化,并相应地修改和更新他们的代码。 此外,Java 1.6.0_20 还修复了一些安全漏洞,增强了 Java 安全性。因此,建议用户及时更新到此版本,以确保他们的应用程序能够受到更好的保护。 总的来说,Java 1.6.0_20 是 Java SE 6 的一个更新版本,它提供了性能改进、新功能、修复了错误和漏洞,并增强了安全性。对于使用 Java开发人员和用户来说,这个版本对于改进和保护他们的应用程序非常重要。 ### 回答2: Java 1.6.0_20是Java编程语言的版本号。1.6.0_20指的是Java 6的第20个更新版本。Java 6是由Sun Microsystems开发的一种计算机编程语言,于2006年12月发布。Java 6是Java语言的一个重要版本,引入了许多新特性和改进。 Java 6的主要特性包括: 1. 改进的性能:Java 6在性能方面进行了优化,包括JIT编译器的改进,减少了执行时间和内存占用。 2. 新的类库和API:Java 6引入了许多新的类库和API,包括脚本引擎API、归档和压缩API、调试API等,丰富了Java的功能和应用范围。 3. 数字和日期的改进:Java 6引入了新的数学库和日期、时间库,提供了更方便和准确的数字和日期处理功能。 4. 增强了安全性:Java 6在安全性方面进行了改进,加强了Java应用程序的安全性和防护措施。 5. 改进了界面和外观:Java 6引入了更好的图形界面和外观,提供了更好的用户体验。 6. 提高了多核处理器的利用率:Java 6通过使用并行处理和多线程技术,提高了多核处理器的利用率,提供了更好的性能。 总结来说,Java 1.6.0_20是Java 6的一个更新版本,它引入了许多新特性和改进,提供了更好的性能、功能和用户体验。然而,Java 6已于2013年4月停止了官方维护,并且不再推荐使用。目前,Java的最新版本是Java 17,它提供了更多的新特性和改进。因此,推荐使用最新版本的Java来进行开发和编程。 ### 回答3: Java 1.6.0_20是旧版本的Java开发工具包(Java Development Kit,JDK)。它于2010年6月发布,已过时但仍有一些人使用。这个版本的JDK是为了在计算机上运行和开发Java应用程序而设计的。 Java 1.6.0_20在其发布时提供了许多功能和改进。其中一些功能包括增强的性能、稳定性和兼容性,以及对新的硬件和操作系统平台的支持。此外,它还提供了新的开发工具、基于网络的应用程序、安全性和用户界面方面的改进。 然而,由于时间的推移,Java已经迭代更新到了更高的版本,目前最新版本为Java 17。这些新版本提供了更多的功能和改进,并修复了旧版本中的漏洞和问题。因此,建议开发者使用较新的Java版本,以获得更好的性能和安全性。 在升级到新版本之前,开发人员需要检查他们的代码是否与新版本兼容,并根据需要进行适当的更新。此外,他们还需要考虑应用程序所需的操作系统和硬件平台,并确保新版本的JDK支持这些平台。 总而言之,Java 1.6.0_20是一个旧版本的JDK,尽管它曾经提供了许多功能和改进,但现在已经过时。开发人员应该考虑升级到更高版本的Java,以获得更好的性能和安全性,并确保他们的应用程序在新环境中正常运行。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值