锁定老帖子 主题:本人java笔试常见题目小结
精华帖 (0) :: 良好帖 (3) :: 新手帖 (1) :: 隐藏帖 (12)
|
|
---|---|
作者 | 正文 |
发表时间:2010-03-25
注:这是本人java笔试常见题目小结,不是笔试题大全,也不一定是其他公司常见面试题。
1.Overload和Override的区别。Overloaded的方法是否可以改变返回值的类型? 方法的重写Overriding和重载Overloading是Java多态性的不同表现。
2.servlet的生命周期 web容器加载servlet,生命周期开始。通过调用servlet的init()方法进行servlet的初始化。通过调用service()方法实现,根据请求的不同调用不同的do***()方法。结束服务,web容器调用servlet的destroy()方法。 servlet生命周期.jpg 见附件
3.说出ArrayList,Vector, LinkedList的存储性能和特性 4.final, finally, finalize的区别。
5.forward 和redirect的区别 6.JSP中动态INCLUDE与静态INCLUDE的区别? 7.设计4个线程,其中两个线程每次对j增加1,另外两个线程对j每次减少1。写出程序。 8.编程题: 写一个Singleton出来。 9.编写一个截取字符串的函数,输入为一个字符串和字节数,输出为按字节截取的字符串。 但是要保证汉字不被截半个,如“我ABC”4,应该截为“我AB”,输入“我ABC汉DEF”,6,应该输出为“我ABC”而不是“我ABC+汉的半个”。
声明:ITeye文章版权属于作者,受法律保护。没有作者书面许可不得转载。
推荐链接
|
|
返回顶楼 | |
发表时间:2010-03-26
就这么简单的面试题啊~~~~~~
|
|
返回顶楼 | |
发表时间:2010-03-26
zdz8207 写道
8.编程题: 写一个Singleton出来。
这个好像会这么写:
public class SingletonClass{ private static class ResourceHolder{ public Instance instance=new Instance(); }
public Instance getInstance(){
return SingletonClass.ResouceHolder.instance; }
public static class Instance{
}
}
} 或者用枚举实现吧。
|
|
返回顶楼 | |
发表时间:2010-03-26
nottjoe 写道 就这么简单的面试题啊~~~~~~
简单也是知识,知道了更好,不知道就再记一遍。 |
|
返回顶楼 | |
发表时间:2010-03-26
Singleton必须添加private构造函数,不然就失去singleton的意义了。而且,性能太差了,会继续追问有很有更好的方式?
|
|
返回顶楼 | |
发表时间:2010-03-26
很好 很强大
|
|
返回顶楼 | |
发表时间:2010-03-26
diaodou 写道 Singleton必须添加private构造函数,不然就失去singleton的意义了。而且,性能太差了,会继续追问有很有更好的方式?
对这个话题请继续谈谈。。。。 |
|
返回顶楼 | |
发表时间:2010-03-26
crabboy 写道 diaodou 写道 Singleton必须添加private构造函数,不然就失去singleton的意义了。而且,性能太差了,会继续追问有很有更好的方式?
对这个话题请继续谈谈。。。。 我也觉得奇怪:性能差在哪里 |
|
返回顶楼 | |
发表时间:2010-03-26
最后修改:2010-03-26
superheizai 写道
zdz8207 写道
8.编程题: 写一个Singleton出来。
这个好像会这么写:
public class SingletonClass{ private static class ResourceHolder{ public Instance instance=new Instance(); }
public Instance getInstance(){
return SingletonClass.ResouceHolder.instance; }
public static class Instance{
}
}
} 或者用枚举实现吧。
|
|
返回顶楼 | |
发表时间:2010-03-26
最后修改:2010-03-26
J-catTeam 写道 crabboy 写道 diaodou 写道 Singleton必须添加private构造函数,不然就失去singleton的意义了。而且,性能太差了,会继续追问有很有更好的方式?
对这个话题请继续谈谈。。。。 我也觉得奇怪:性能差在哪里 Singleton类肯定要提供默认的private构造函数,要不然就不叫Singleton了。 另外,楼主的第一种方式是空间换时间。第二种方式: 引用 第二种形式: public class Singleton { private static Singleton instance = null; public static synchronized Singleton getInstance() { //这个方法比上面有所改进,不用每次都进行生成对象,只是第一次 //使用时生成实例,提高了效率! if (instance==null) instance=new Singleton(); return instance; } } 在每次调用Singleton.getInstance()方法的时候都用synchronized同步确实会影响性能,实际上除了第一次instance==null时需要同步,初始化之后同步是没有必要的。通常会这样写: public class Singleton{ private volatile static Singleton instance = null; private Singleton(){} public static Singleton getInstance(){ if(instance == null){ synchronized(Singleton.class){ if(instance == null){ instance = new Singleton(); } } } return instance; } } 上述代码保证了只在第一次初始化时同步多线程的安全,性能也不错。唯一的缺点是可能在某些老式的JVM上还是会出现多线程不安全的问题。 |
|
返回顶楼 | |