群硕20170515Java研发实习生笔试题

昨天,群硕来我们学校召开了宣讲会,不得不承认我啥都没有准备就顺便去参加了群硕的笔试,然而在意料之外又在情理之中的结果是,我笔试就没有过。

我之前也做过一点项目的,所以说我现在才知道,能做出东西和能理解透那些知识点是两码事。一般情况,达到会做项目的水平,只要知道如何去做,大体上的业务流程是什么就行了。然后做项目的过程中遇到一些细节问题的话,可以再寻求论坛上大神的类似问题的解决方法。但是一旦这些东西落到纸上,那就是真刀真枪,没有任何提示,全凭自己的知识储备和记忆能力了。

趁着我还有点印象,我就大致回忆一下题目吧,希望能对各位战友有所帮助。

1.说一下你对垃圾回收的理解。

Carbage Collection(GC) 垃圾回收,是为了让系统更加安全和稳定。这一点和c++中的内存的释放与分配相似,不过c++中都是由程序员来管理的,而一旦程序员错误地操作了内存的话,就会有系统崩溃的危险。而Java在这一方面就做的比较人性化,Java语言中的垃圾回收器有自动检测功能,如果发现内存中的存储空间不再用到,就会将其释放掉。从这一方面来讲,减轻了程序员的工作量,使其能将能多的时间和精力用在更有价值的事情上。

垃圾回收器的自动检测功能在维护了系统的稳定性的同时,也增加了JVM的负担。因为垃圾回收器要不断的跟踪内存的分配及使用情况,有哪些对象需要被释放,释放完“垃圾”之后还得收拾“残局”——堆中残余的碎片,所以虚拟机的负担也不可避免的增加了,程序的执行效率势必要降低。鱼与熊掌不可兼得也。

那么,什么才是垃圾呢?

如果一个对象,没有被程序访问,即程序中没有任何一个变量去引用它,那这个对象占据的内存空间就是垃圾,就该将其释放掉。

需要注意一点,回收的是没有任何引用对象所占据的内存空间而不是对象本身。


2.明天再写


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值