- 博客(3)
- 收藏
- 关注
原创 [Java基础]时间处理相关类
在程序的执行过程中我们不可避免对时间的获取,转换操作,所以,了解常用的时间类还是很有必要的 计算机内的时间: 时间在计算机里是一维的,就如同一个直尺一般,而在计算机里,将1970年1月1日定为基准时间,每个度量单位是毫秒,一般用Long类型的变量来计量时间:Long now = System.currentTimeMillis(); 时间处理核心类Date: 创建Date对象:Date d = new Date(); //java.util.Date;Date类的无参构造实际上是调用有参构造Da.
2020-05-24 18:39:14 214
原创 [Java基础]StringBuilder和StringBuffer
StringBuilder和StringBuffer的产生背景: String一经初始化后,就不会改变其内容了。对String字符串的操作实际上是对其副本(原始拷贝)的操作,原来的字符串一点都没有改变。比如: String s = “a”;创建了一个字符串; s = s+“b”;实际上原来的"a"字符串对象已经丢弃了,现在又产生了另一个字符串s+“b”(也就是"ab")。如果多次执行这些改变串内容的操作,会导致大量副本字符串对象留在内存中,降低效率。如果这样的操作放到循环中,会极大影响程序的时间和空间性能
2020-05-23 21:51:22 190
原创 [Java基础]Java对象内存分析
Java虚拟机的内存大致分为三个区域: 栈stack: 栈是方法执行的内存模型,每个方法被调用都会创建一个栈帧(存储局部变量、操作数、方法出口等),每个方法执行的相关调用都在栈里面; 栈是线程私有的,不能线程共享; 虚拟机会为每个线程创建一个独立的栈; 栈的存储特性类似于子弹的弹夹,先进去的后出来,后进去的先出来,如方法一调用方法二,方法二调用方法三,先开辟方法一的栈帧,再开辟方法二的栈帧,最后开辟方法三的栈帧,但是执行的关闭顺序是先关闭方法三的栈帧,再关闭方法二的栈帧,最后关闭方法一的栈帧,而当整个线
2020-05-23 16:53:45 347
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人