有Java面试题吗?

java面试题:如何解决内存溢出 第一对所有的代码包括页面中的java代码都进行一遍彻底的回顾检查,1.对那些静态(static)的对象要特别留神,特别是类型为Map,List,Set的,静态的变量会一直驻存在内存中,生命周期比较长,不会被垃圾器回收。2.对于代码,要审查是否生成了大量的冗余的对象,还有一些逻辑业务...
有Java面试题吗?
java面试题:如何解决内存溢出

第一对所有的代码包括页面中的java代码都进行一遍彻底的回顾检查,
1.对那些静态(static)的对象要特别留神,特别是类型为Map,List,Set的,静态的变量会一直驻存在内存中,生命周期比较长,不会被垃圾器回收。
2.对于代码,要审查是否生成了大量的冗余的对象,还有一些逻辑业务处理的类,
算法是否过于复杂,调整算法,对于代码认真审查,再仔细重构一遍代码,能提高代码质量,提高程序运行稳定性。
3.Java中的内存溢出大都是因为栈中的变量太多了。其实内存有的是。建议不用的尽量设成null以便回收,多用局部变量,少用成员变量。
1),变量所包含的对象体积较大,占用内存较多。
2),变量所包含的对象生命周期较长。
3),变量所包含的对象数据稳定。
4),该类的对象实例有对该变量所包含的对象的共享需求。
4.在我的程序中对静态变量的优化后,使程序占用内存量至少提升了5k-10k。所以也不容忽视。
第二还有就是String类相关的东西:
1.字符串累加的时候一定要用StringBuffer的append方法,不要使用+操作符连接两个字符串。差别很大。而且在循环或某些重复执行的动作中不要去创建String对象,因为String对象是要用StringBuffer对象来处理的,一个String对象应该是产生了 3个对象(大概是这样:))。
2.字符串length()方法来取得字符串长度的时候不要把length放到循环中,可以在循环外面对其取值。(包括vector的size方法)。特别是循环次数多的时候,尽量把length放到循环外面。
int size = xmlVector.size();
for (int i = 2; i < size; i++) {
...
}
3 .写代码的时候处理内存溢出
try{
//do sth
....
}catch (outofmemoryerror e){//可以用一个共通函数来执行.
system.out.print (“no memory! ”);
system.gc();
//do sth again
....
}
1. 对于频繁申请内存和释放内存的操作,还是自己控制一下比较好,但是System.gc()的方法不一定适用,最好使用finallize强制执行或者写自己的finallize方法。 Java 中并不保证每次调用该方法就一定能够启动垃圾收集,它只不过会向JVM发出这样一个申请,到底是否真正执行垃圾收集,一切都是个未知数。2017-12-20
mengvlog 阅读 129 次 更新于 2025-09-08 16:01:30 我来答关注问题0
  •  翡希信息咨询 压抑了五个月的我终于可以放声呐喊了!阿里是真的难进,Java四面面经+面试题

    四面面经(HR面)面试内容:主要询问技术之外的一些内容,如工作经历、家庭情况、对加班及公司文化的看法等面试时间较短,不到半小时面试题示例:请描述一下你以往的工作经历及你在团队中的角色。你对加班有什么看法?你认为在什么情况下需要加班?部分技术面试题详细解析Java基础HashMap结构:HashMap是基于...

  •  翡希信息咨询 压抑了五个月的我终于可以放声呐喊了!阿里是真的难进,Java四面面经+面试题

    主要考察Java基础知识,如HashMap结构、什么对象能作为key等。面试官一般不会直接回答对错,而是通过追问来进一步了解你的掌握程度。面试时间大约40分钟,结束后需要等待消息。二面:侧重于项目经验和框架知识,如Spring、MyBatis等。同样,面试官会追问细节,以评估你的项目经验和解决问题的能力。面试时间也是...

  •  翡希信息咨询 压抑了五个月的我终于可以放声呐喊了!阿里是真的难进,Java四面面经+面试题

    自我介绍Java基础问题,如HashMap结构、什么对象能作为key等面试官一般不直接回答对错,而是继续追问或换题面试感受:面试过程较为紧张,答得是否准确自己也不太确定面试官态度较好,不直接评价答案,保持倾听二面面经面试内容:主要询问项目经验和使用的框架面试官同样不直接评价答案,继续提问面试感受:相比一...

  •  翡希信息咨询 压抑了五个月的我终于可以放声呐喊了!阿里是真的难进,Java四面面经+面试题

    面试题总结Java基础HashMap结构:了解HashMap的内部结构(数组+链表/红黑树),以及put和get方法的工作原理。什么对象能作为key:通常要求对象实现hashCode()和equals()方法,且key必须为不可变对象(如String)。Hashtable, ConcurrentHashMap, HashMap比较:了解它们的线程安全性、性能差异以及适用场景。Strin...

  •  翡希信息咨询 压抑了五个月的我终于可以放声呐喊了!阿里是真的难进,Java四面面经+面试题

    阿里的面试确实非常严格且全面,下面是对你提到的面试经历及面试题的详细解答和补充。阿里面试经历概述 一面:主要考察Java基础,包括但不限于数据结构、算法、Java语言特性等。面试官会根据你的回答进行追问,以深入了解你的掌握程度。 二面:侧重于项目经验和框架知识,如Spring、MyBatis等。面试官会询问你在项目中遇到...

檬味博客在线解答立即免费咨询

Java相关话题

Copyright © 2023 WWW.MENGVLOG.COM - 檬味博客
返回顶部