Test
文章平均质量分 50
Bazinga蛮
这个作者很懒,什么都没留下…
展开
-
Java编程如何避免内存溢出?
1.尽早释放无用对象的引用(XX = null;) 2.谨慎使用集合数据类型,如数组,树,图,链表等数据结构,这些数据结构对GC来说回收更复杂。3.避免显式申请数组空间,不得不显式申请时,尽量准确估计其合理值。4.尽量避免在类的默认构造器中创建、初始化大量的对象,防止在调用其自类的构造器时造成不必要的内存资源浪费5.尽量避免强制系统做垃圾内存的回收,增长系统做垃圾回收的最终时间原创 2014-04-27 10:18:46 · 1432 阅读 · 0 评论 -
大数据排序处理
题目:如果有一个20g的日志文件,日志文件记录着用户访问过的url,每一行为一个url,给你一台512M的主机,找出出现次数最多的10个url参考答案及思路:1. Top K算法:使用堆排序算法+大顶堆+10个元素的数组。2.IP地址最多有2^32=4G种取值情况,所以不能完全加载到内存中处理;可以考虑采用“分而治之”的思想,按照IP地址的Hash(IP)%原创 2014-04-27 10:55:01 · 1453 阅读 · 1 评论 -
java如何获得JVM可能的总内存,最大内存,以及空闲内存?
import java.text.DecimalFormat;import org.junit.Test;public class JVMTest{ DecimalFormat df = new DecimalFormat("0.00") ; //显示JVM总内存 long totalMem = Runtime.getRuntime().totalMemory(); //显示JVM原创 2014-04-27 10:14:53 · 931 阅读 · 0 评论 -
JVM中可生成的最大Thread数量是多少?影响Java线程数量的因素都有哪些?
JVM中可生成的最大Thread数量估算方法:JVM中可以生成的最大数量由JVM的堆内存大小、Thread的Stack内存大小、系统最大可创建的线程数量(Java线程的实现是基于底层系统的线程机制来实现的,Windows下_beginthreadex,Linux下pthread_create)三个方面影响。具体数量可以根据Java进程可以访问的最大内存(32位系统上一般2G)、堆内存、Thre原创 2014-04-27 10:41:59 · 1860 阅读 · 0 评论 -
java面试过程中经常遇到的一些试题的总结(1)
1、overload和override的区别overload:方法的重载只在方法之间发生方法名相同,并且区分大小写参数列表不同,具体是指参数的类型,个数,顺序不同返回值类型没有要求,可以相同,也可以不同override:方法的覆盖发生在父子类之间方法名称,参数表,返回值都相同修饰符一样或者更宽静态方法只能被静态方法覆盖,没有多态子类不能抛出比父类原创 2014-04-27 10:51:42 · 656 阅读 · 0 评论