面试遇到的问题小结
2018-03-22 16:39
555 查看
1.a=a+b 和 a+=b的区别
主要区别在于精度转换,a+=b自带类型转换效率更高,参考文章2.servlet是线程安全的吗?
Servlet 默认是单例模式,在web 容器中只创建一个实例,所以多个线程同时访问servlet的时候,Servlet是线程不安全的。参考文章
3.递归分治排序数组
卧槽,先放一放。。。。4.得到100-200的所有素数
参考文章,质数又称素数。。。5.在spring里使用stringbuild还是stringbuffer
首先,stringbuild是线程不安全的但效率高,而stringbuffer是线程安全的效率低,参考文章所以要考虑spring是不是线程安全的,在大多数情况下,spring bean是非线程安全的,所以用stringbuffer,参考文章
6.关于静态块,块,构造器和继承之间的加载顺序
这一块一直都比较模糊,学习下demo class A {
A() {
System.out.println("构造器A");
}
static {
System.out.println("static A");
}
{
System.out.println("块A");
}
}
class B extends A {
B() {
System.out.println("构造器B");
}
static {
System.out.println("static B");
}
{
System.out.println("块B");
}
public static void main(String[] args) {
System.out.println("main");
new A();
// new B();
// new B();
}
}
输出结果:
static A
static B
main
块A
构造器A
------------------------------------------------------------------------------------
将mian变为public static void main(String[] args) {
System.out.println("main");
// new A();
new B();
// new B();
}输出结果:
static A
static B
main
块A
构造器A
块B
构造器B
------------------------------------------------------------------------------------
将mian变为 public static void main(String[] args) {
System.out.println("main");
// new A();
new B();
new B();
}
输出结果:
static A
static B
main
块A
构造器A
块B
构造器B
块A
构造器A
块B
构造器B
相关文章推荐
- iOS面试之面试问题小结
- java/golang开发面试中遇到的问题集锦--持续更新
- 面试中遇到的问题
- 面试中遇到的一些问题(数据仓库)
- PHP中file_exists使用中遇到的问题小结
- JS数组排序-面试经常遇到的问题
- 一些面试时候可能遇到的问题
- 项目中遇到的问题小结1.0
- 面试遇到的ajax请求串行和并行问题
- 使用 bootstrap modal遇到的问题小结
- 软件项目开发过程中主要遇到的核心问题小结
- Linux云计算 面试时最常遇到的40个问题
- 自己面试中遇到的for循环问题
- android studio 2.4遇到问题小结
- 面试中遇到的一些问题
- 【最近面试遇到的一些问题】java中list、set和map 的区别
- 项目经理面试中可能遇到的问题(持续更新)
- 百度面试问题小结
- Web前端面试中遇到的问题
- iBatiS中遇到的sql上的问题小结