2015中兴校园招聘面试题

我面试的是中兴软件开发岗位,由于我相对熟悉Java,所以为我安排了一个熟悉Java的面试官,感觉挺人性化的,因为有些公司的面试直接安排一位面试官根本不管你擅长什么。

以下是我记得一些面试题目,并且做了解答,如果有不对的地方还望指正:

1.ArrayList是集合,里面存放的是对象,但是却可以存放int类型的数据(int不是对象),为什么?

Java中有8中基本数据类型,int、float、double、byte、short、long、char、bool,这8中基本类型对应8中封装类,分别是:Integer、Float、Double、Byte、Short、Long、Character、Boolean。在某些情况下,Java会自动完成int>>Integer(装箱)、Integer>>int(拆箱)的转换,如下:

ArrayList list=new ArrayList<Integer>();
list.add(3);//自动装箱
int elem=list.get(0);//自动拆箱
2.HashTable和HashMap的区别?

(1)HashTable是线程同步的,而HashMap不是

(2)HashTable不允许null,而HashMap允许null值

(3)HashTable有一个contains(Object value)和containsValue(Object value)功能一样

3.线程有那几种状态?

(1)NEW:线程被new出来但是还没有调用start方法

(2)RUNNABLE :正在Java虚拟机中执行的线程处于这种状态

(3)BLOCKED:受阻塞并等待某个监视器的线程处于该状态

(4)WAITING:无限期的等待另一个线程来执行某一操作的线程处于该状态

(5)TIMED_WAITING:等待的另外一个线程的时间是指定的线程处于该状态

(6)TERMINATED:已经退出的线程处于该状态,run方法执行完处于该状态

4.线程之间如何共享数据?

使用public static修饰的变量可以在多线程中访问,但是需要自己保证线程同步。(如使用线程同步的数据结构)

5.说说JDBC连接数据库的过程?

加载驱动、获得连接、获得statement对象执行sql语句、使用ResultSet获得sql语句执行的结果。

这个不难,就不再这里写代码了。

6.说说Java的反射机制?

要让Java程序运行,就得让Java类被Java虚拟机加载,如果不被加载就无法执行。正常情况下,Java虚拟机会在程序编译期就把相关的类加载了。可是有时候在编译时期并不知道该加载哪一个类,需要等到运行时再确定,这就是Java的反射机制。

Java反射机制作用:方便我们使用面向接口编程,我们代码中使用接口来操作,而具体是哪一个实现我们把它写到配置文件中,这样一来,如果我们以后需要修改实现,只需要修改配置文件而不需要修改代码了。(Spring就是利用了反射、JDBC也是使用了反射:Class.forName())

7.forward和redirect的区别?

forward是浏览器向服务器请求jsp或servlet,如果服务器发现该url指向另外一个页面会直接把另外一个页面内容返回,这个跳转发生在服务器端,而浏览器地址栏中还是原先的地址;redirect重定向,浏览器请求某个jsp或servlet,如果发现指向另外一个url,则服务器把url返回,浏览器收到之后重新请求服务器,所以地址栏显示的是重新请求的地址。

8.tomcat中默认的编码方式?

tomcat中的默认编码方式为ISO8859-1,可以通过修改server.xml中的URLEncoding为"UTF-8"。

9.简单说说Java的垃圾回收机制?

在Java中程序员不需要考虑内存的释放,因为这一切都是有JVM的GC来管理的。GC是Java的垃圾收集器,能够自动释放在程序中不再用到的对象,能够有效地管理内存,避免了出现内存泄漏的可能。垃圾收集是一个优先级很低的线程,在内存充足时是不会被调用的。

具体的垃圾收集相关的知识还请大家翻阅资料。

10.Struts2中如果要跳转的是一个Action,应该如何配置?

只需要修改result中的type属性为redirect-action或者为chain,chain跟foreard类似,跳转之后地址栏的地址不会发生变化,而redirect-action与redirect类似,地址栏内容发生了改变。

11.web请求返回的状态码默认是什么?

200:服务器成功返回;

404:访问的页面不存在

302:重定向

503:服务器暂时不可用

500:服务器遇到内部错误

504:网管超时

以下是一些网络相关的内容:

12.OSI有那几层?TCP/IP有哪几层?TCP和UDP有什么区别?

OSI:应用层、表示层、会话层、传输层、网络层、数据链路层、物理层;TCP/IP:应用层、传输层、网际层、数据链路层、物理层

TCP、UDP的区别:

 TCPUDP
是否面向连接
传输是否可靠
速度
传送数据量传送少量数据传送大量数据

13.TCP是如何保证可靠传输的?

14.解释一下三次握手四次挥手,说明为什么需要三次握手?





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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值