Java高级工程师面试题和答案解析
发布时间
阅读量:
阅读量
面试永远是程序员迈向成功的不可忽视的第一道重要门槛,在求职过程中希望获得成功的程序员都必须接受各种Java高级工程师面试题的考验和挑战。下面查看小编精心整理的一些Java高级工程师面试题及答案吧。
一、堆的年轻代和老年代怎么理解
若年轻代内存较大,则老年代内存相对较小。 GC少的情况下,在这种情况下垃圾回收次数较少且每次所需时间较长;相反地,则可以显著缩短垃圾回收所需的时间但可能会导致垃圾回收频率较高。 通过适当调整配置参数使老年代尽量缓存常用对象以提高运行效率;JVM默认情况下两者大小比例设定为1:2 观察到峰值的老年代内存不会影响full功能运行
采用垃圾回收机制时,在老年代配置中将比例调整至1:1。尽量避免使用全局变量和长对象,并优化新生代配置以使老年代能够达到最佳状态。
二、字节流与字符流的作用
字节流不借助内存缓冲区处理文件内容;而字符流操作则会利用内存缓存区进行相应的处理工作。在输出前会暂时将所有内容存储于内存缓存区中;若未关闭缓存并希望输出,则可调用flush方法强制刷新缓存区域中的数据。即缓存区域内暂时存储内容;若未关闭缓存并希望输出,则可调用flush方法强制刷新缓存区域中的数据。此外,在进行字节字符转化时需要注意系统编码lang的存在;为此应制定相应的编码规则以确保正确性与一致性。而getbyte字节流常被采用得更为普遍
三、如何唤醒一个阻塞的线程
全部评论 (0)
还没有任何评论哟~
