读书人

大三结业季-面试旅行之金山快盘

发布时间: 2012-07-31 12:33:47 作者: rapoo

大三毕业季--面试旅行之金山快盘

? ?“金山快盘”6道面试题题目及解答如下。

第一题:String,StringBuilder,StringBuffer的区别。

???String:有两种初始化方式。其一是字面值创建,其二是使用new关键字创建。

? ? 举例如下:

? ? String strA=“adf”;

????String strB=“adf”;

? ? String strC=new String("adf");

? ??String strD=new String("adf");

????根据字面值创建的是保存在常量池中,创建StrB的时候,先检查常量池中是否已经存在常量“adf”,如果已经存在,此时不会再创建新的字符串。创建strC的时候,不会去常量池中查找,而是在堆内存中直接创建了一个对象。即使再创建strD变量,同样会再开辟内存。因此当字符串串联时会造成很大浪费如下:

????String strE=“a”+“df”+"ty";//中间会生成无用的“adf”,最终生成“adfty”。

????String strF=strC+strD;//重新开辟内存存储strF

????如果经常对字符串进行插入,删除,追加等操作,显然会造成内存浪费。解决办法是:StringBuffer

????StringBuffer:String类是不可变的,体现在它是final修饰的类。内部维护的是:

? 2:private:无法继承,何谈重写。

? 3:static?:可以被继承,不能被重写。

第三题:Java为什么可以在不同平台上运行?

? ?只要在不同平台上安装了JRE-运行时环境,它会根据不同的平台将class文件翻译成不同平台上的执行命令,实现与平台无关。

第四题:给定一个数组,求出第二个最大的数。

????可以先排序(如冒泡)再取出。方法应该很多。

第五题:用递归和非递归实现K阶Fib(K,n)函数。函数定义是:

F(n)=F(n-1)+F(n-2)+...+F(n-k),(n>=k)

F(n)=1,(n=k-1)

F(n)=0,(0=<n<k-1)

递归方法:

?

非递归方法:

?

?

第六题:设计一个日志类框架,可以实现自定义的KPLog日志类,写出主要思路和核心代码(尚未实现)

?

???

?

?

?

?

?

1 楼 pigswimming 2012-03-15 有人拿到offer吗?感觉金山快盘是来打酱油的,二面被鄙视的人飘过..... 2 楼 十三月的 2012-03-15 pigswimming 写道有人拿到offer吗?感觉金山快盘是来打酱油的,二面被鄙视的人飘过.....
这个还是有的 同行的6个拿到了 ... 3 楼 endual 2012-03-15 天啊,都是面试宝典的题目啊 4 楼 十三月的 2012-03-15 endual 写道天啊,都是面试宝典的题目啊
嗯 看来看面试宝典还是有必要的

读书人网 >其他相关

热点推荐