java
逗逗大魔王
这个作者很懒,什么都没留下…
展开
-
使用bigdecimal来保留小数
double和float精度已经非常高了,但对于一些更加精确的东西还是有所欠缺,所以也就有了精度更高的bigdecimal,只要计算机的内存更大,精确的就更准。 import java.math.BigDecimal;导入BigDecimal包。float f = ran.nextFloat() * 60 + 40; BigDecimal b = new BigDec原创 2017-09-26 19:40:54 · 1203 阅读 · 0 评论 -
字符串内存分析
String a="a";String b=new String("a");上面是两段创建字符串的代码, System.out.println(a==b); System.out.println(a.equals(b));我们可以知道第一个输出的是false,第二个是true。为什么呢? 第一个比的是地址,第二个比的才是字符串里的内容。那又为什么地址会不相等呢。String b=new Str原创 2017-09-26 20:04:33 · 378 阅读 · 0 评论 -
JVM知识总结
一.什么是JVM它是一个虚构出来的计算机,是通过在实际的计算机上仿真模拟各种计算机功能来实现的。Java虚拟机包括一套字节码指令集、一组寄存器、一个栈、一个垃圾回收堆和一个存储方法域。JRE:Java运行环境,也就是Java平台。所有的Java 程序都要在JRE下才能运行。JDK:程序开发者用来来编译、调试java程序用的开发工具包,在JDK的安装目录下有一个名为jre的目录JVM...原创 2019-06-20 14:53:37 · 229 阅读 · 0 评论 -
多线程知识总结
一、多线程主要是为了解决单线程因阻塞而带来的效率问题,同时也充分利用多核CPU的优势。1、拷贝主内存成员变量线程工作内存是cpu寄存器和高速缓存的抽象描述,使用频率高的数据从主存拷贝到高速缓存中,每个线程在cpu高速缓存中对拷贝的数据进行读取、计算、赋值,再在合适的时候同步更新到主存的该数据。这样比一直去主内存访问要快的多。2、产生安全问题我们应该知道了在运行时数据内存区...原创 2019-06-21 19:30:10 · 287 阅读 · 0 评论 -
IO流知识总结(一)
一、IO硬件原理1、IO系统I/O 设备及其接口线路、控制部件、通道和管理软件。2、设备类型根据输入输出特性划分:输入型外围设备、输出型外围设备和存储型外围设备。按照输入输出信息交换的单位划分:字符设备:输入型外围设备和输出型外围设备一般为字符设备,它与内存进行信息交换的单位是字节,即一次交换 1 个或多个字节块设备:块设备一次与内存交换的一个或几个块的信息,存储型外围设...原创 2019-06-27 19:39:41 · 1046 阅读 · 0 评论 -
IO流知识总结(二)
当程序阻塞时,会降低程序的效率,于是人们就希望能引入非阻塞的操作方法,也就有了同步非阻塞,但是对于同步状态中是需要等到有返回结果才能继续执行下一步,又希望在等待IO操作的时候还能去做别的事情,等IO操作完通知它,所以又引入了异步,也就有了各种IO模型。一、IO模型对于I/O,可以分成阻塞I/O与非阻塞I/O两大类型。阻塞I/O在做I/O读写操作时会使当前线程进入阻塞状态,而非阻塞I/O则不...原创 2019-07-18 21:13:24 · 303 阅读 · 0 评论 -
RPC框架(一)
一、背景早期经常会在单机上跑我们所有的程序和软件,把所有软件和应用都部署在一台机器上。单机的处理能力主要依靠 CPU、内存、磁盘。通过更换硬件做垂直扩展的方式来提升性能,成本会越来越高,单机处理能力存在瓶颈,CPU、内存都会有自己的性能瓶颈,单机系统存在可用性和稳定性的问题。随着网站的上线,访问量逐步上升,服务器的负载慢慢提高,假如代码层面的优化已经没办法继续提高,在不能提高单台机器的性能...原创 2019-07-23 17:37:03 · 180 阅读 · 0 评论 -
NIO框架
一、简介流行基于Java NIO通信框架有Mina、Netty、Grizzly等。1、Mina来自于开源界的大牛Apache组织,是 Apache 组织一个较新的项目,它为开发高性能和高可用性的网络应用程序提供了非常便利的框架,支持基于 Java NIO 技术的 TCP/UDP 应用程序开发、串口通讯程序。2、Netty来自于商业开源大亨Jboss,是一款异步的事件驱动的网络应...原创 2019-07-19 16:17:55 · 939 阅读 · 0 评论 -
RPC框架(二)
一、Hessianhessian是一种高效简洁的远程调用框架,它采用的是二进制Binary-RPC协议,基于Http协议进行传输,具有轻量、传输量小、平台无关的特点,Hessian通常通过Web应用来提供服务,通过接口暴露,特别适合于目前网络带宽比较小的手机网络应用项目。采用Binary RPC协议,相比webservice而言更简单、快捷,可与spring集成,配置简单,使用HessianS...原创 2019-07-24 17:11:05 · 188 阅读 · 0 评论