面试题
super_sjh
这个作者很懒,什么都没留下…
展开
-
浅谈StackOverflowError和OutOfMemoryError
1、栈溢出: 每当java程序启动一个新的线程时,java虚拟机会为他分配一个栈,java栈以帧为单位保持线程运行状态; 当线程调用一个方法是,jvm压入一个新的栈帧到这个线程的栈中,只要这个方法还没返回,这个栈帧就 存在,如果方法的嵌套调用层次太多(如递归调用),随着java栈中的帧的增多,最终导致这个线程的栈中的 所有栈帧的大小的总和大于-Xss设置的值,而产生生StackOverf...原创 2013-04-26 19:02:27 · 152 阅读 · 0 评论 -
经典面试题
这是一道面试题:大概描述如下 做一批纸鹤,A要45分钟,B要30分钟,两人一起做要多少分钟 本人的解题思路出如下:45x=L30y=Lxa+ya=L x/y=30/45=2/3 (x+y)a=30y(x/y +1)a=305/3 a=30a=30*3/5=18 ...原创 2013-04-26 19:06:46 · 62 阅读 · 0 评论 -
浅析memcached
memcach的原理 概念:Memcached是国外社区网站LiveJournal的开发团队开发的高性能内存缓存服务器,通过缓存数据库的结果,减少数据库访问次数,以提高动态WEB的速度,提高可扩展性; 运行过程:浏览器首次访问读取的是数据库中的数据,返回的同时保存到memcached中;第二次以后直接访问memcached 数据存储方式:Slab allocation:基本原理是先把内存安...原创 2013-04-27 21:40:06 · 94 阅读 · 0 评论 -
读取超大文件的两个类BufferedReader和MappedByteBuffer
BufferedRead提供了一套缓冲机制,读取文件时先在内存中建立一块缓冲区,然后读取文件填满缓冲区, 然后在缓冲区中对文件进行实际的操作,当缓冲区读完后调用read方法继续填充缓冲区; MappedByteBuffer将文件映射到虚拟内存中,如果文件比较大可以分段映射,分段映射需要指定文件的具体映射部分;在对内存中的文件进行操作,大大提高效率;MappedByteBuffer map(i...原创 2013-06-14 10:51:51 · 732 阅读 · 0 评论 -
Set集合的简单总结
hashSet和TreeSet的区别: 1、HashSet是通过HashMap实现的,TreeSet是通过TreeMap实现的,用的是key; 2、hashSet和TreeSet都的元素都具有唯一性,TreeSet多了一个排序功能; 3、HashCode和equals是提供给HashSet用的,因为不需要排序所以只要关注唯一性即可, hashCode是用来计算hash值的,hash值是...原创 2013-06-14 11:05:47 · 105 阅读 · 0 评论 -
java堆栈区别和垃圾回收机制总结
1Java中堆和栈的区别 、 堆和栈都是内存中的一部分; 2、 栈的空间比较小,用来存放对象的引用 3、 堆的空间比较大,一般新建的对象都存放在堆里 4、 栈是一个先进后出的数据结构,通常保存方法中的参数和局部变量 5、 在java中所有的基本变量和引用变量都存储在栈中,栈中数据的生命周期是“{。。。}”之间 6、 堆是一个可动态申请分配内存空间(其记录空间的记录由操作系...原创 2013-06-14 11:35:29 · 293 阅读 · 0 评论 -
数据库事务ACID,及事务的隔离级别,脏读,幻读
原子性:整个事务中的所有操作要么全部完成,要么全部不完成,不能停滞在中间某个环节 一致性:事务前后数据库的完整性约束没有被破坏 隔离性:多个事务之间是互不干扰的,一个事务不可能看到其它事务中间某一时刻的数据 持久性:事务对数据库的操作更改是持久的,不会被回滚 四种事务隔离级别: 读未提交:读取其他事务没有提交的数据(脏读,幻读,不可重复读,避免了第一类更新丢失) 读已提交:读已提交...原创 2013-06-14 11:37:04 · 121 阅读 · 0 评论 -
网络协议相关总结,TCP/IP,UDP
TCP/IP(Transmission Control Protocol/Internet Protocol) 有TCP协议和IP协议组成,TCP/IP协议是一组TCP协议,IP协议,UDP协议,ICMP协议及其它协议组成的协议组。 传统的7层是:物理层,数据链路层,网络层,传输层,话路层,表示层,应用层;而TCP/IP采用了4层结构: a、应用层(应用程序间的沟通层,如简单的电子邮件传输...原创 2013-06-14 11:40:05 · 89 阅读 · 0 评论