拿出IT人的风采—IT面试试题

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

专业技术方面面试题(一)Java面试题Java是当前最热门的软件开发语言,它具有跨平台、面向对象、强大的网络功能等特性。不仅能在电脑上使用Java程序,还能在手机、PDA、家用电器上使用Java程序,甚至举世瞩目的火星车也全部采用Java技术。Java在不到10年时间内已经变成最流行的软件开发平台,最新的企业级Java2.0版本(简称:J2EE)也成为企业应用系统上最受欢迎的开发标准。目前我国Java人才还远远不够,至少短缺20万。特别是随着大量软件外包业务进入中国,许多外资或中资软件企业也开始面临着高级Java人才奇缺的问题,尤其是熟悉J2EE又能掌握一门相应外语的人才成为了众多大公司争抢的对象。当前全世界范围内的J2EE架构师都是紧缺的人才,只是中国更加明显而已。许多求职者的履历表上都有把J2EE列进去,但是仔细查看或是面试之后就会发现大多数人只是听过J2EE,并没有真正用过这些技术。下面这些都是面试时Java的基本题,面试官大多数不会问你Hibernate有多先进,Eclipse的三个组成部分,或commanddesignpattern,他们都是老一辈了,最喜欢问的就是基础知识。别小看了这些基础,哪怕水平一流,如果栽在一到基础知识的问题下,也和高薪无缘。例题:1.什么是JDK,举出几个公司开发的JDK。答:JDK(JavaDevelopmentKit)是整个Java的核心,包括了Java运行环境(JavaRuntimeEnvirnment),一堆Java工具和Java基础的类库(rt.jar)。不论什么Java应用服务器实质都是内置了某个版本的JDK。因此掌握JDK是学好Java的第一步。最主流的JDK是Sun公司发布的JDK,除了Sun之外,还有很多公司和组织都开发了自己的JDK,例如IBM公司开发的JDK,BEA公司的Jrocket,还有GNU组织开发的JDK等等。其中IBM的JDK包含的JVM(JavaVirtualMachine)运行效率要比SunJDK包含的JVM高出许多。而专门运行在x86平台的Jrocket在服务端运行效率也要比SunJDK好很多。2.JDK如何下载和安装?答:JDK又叫做J2SE(Java2SDKStandardEdition),可以从Sun的Java网站上下载到,,JDK当前最新的版本是J2SDK1.4.2,建议下载该版本的JDK,下载页面在这里:。下载好的JDK是一个可执行安装程序,默认安装完毕后会在C:\ProgramFiles\Java\目录下安装一套JRE(供浏览器来使用),在C:\j2sdk1.4.2下安装一套JDK(也包括一套JRE)。然后我们需要在环境变量PATH的最前面增加java的路径C:\j2sdk1.4.2\bin。1这样JDK就安装好了。3.JDK的命令工具答:JDK的最重要命令行工具:java:启动JVM执行classjavac:Java编译器jar:Java打包工具javadoc:Java文档生成器这些命令行必须要非常非常熟悉,对于每个参数都要很精通才行。对于这些命令的学习,JDKDocumentation上有详细的文档。4.什么是应用服务器(AppServer)?简要介绍几种常用的AppServer。答:AppServer是运行Java企业组件的平台,构成了应用软件的主要运行环境。当前主流的AppServer是BEA公司的WeblogicServer和IBM公司的Websphere以及免费的Jboss,选择其中一个进行学习就可以了,个人推荐Weblogic,因为它的体系结构更加干净,开发和部署更加方便,是Java企业软件开发人员首选的开发平台。下面简要介绍几种常用的AppServer:1)TomcatTomcat严格意义上并不是一个真正的AppServer,它只是一个可以支持运行Serlvet/JSP的Web容器,不过Tomcat也扩展了一些AppServer的功能,如JNDI,数据库连接池,用户事务处理等等。Tomcat被非常广泛的应用在中小规模的JavaWeb应用中,因此本文做一点下载、安装和配置Tomcat的介绍:Tomcat是Apache组织下Jakarta项目下的一个子项目,它的主网站是:,Tomcat最新版本是Tomcat4.1.27,软件下载的连接是:。下载Tomcat既可以直接下载zip包,也可以下载exe安装包(个人建议zip更干净些),不管哪种情况,下载完毕安装好以后(zip直接解压缩就可以了)。需要设置两个环境变量:JAVA_HOME=C:\j2sdk1.4.2CATALINA_HOME=D:\tomcat4(你的Tomcat安装目录)这样就安装好了,启动Tomcat运行CATALINA_HOME\bin\startup.bat,关闭Tomcat运行shutdown.bat脚本。Tomcat启动以后,默认使用8080端口,因此可以用浏览器访问来测试Tomcat是否正常启动。Tomcat提供了两个Web界面的管理工具,URL分别是:://localhost:8080/manager/html在启用这两个管理工具之前,先需要手工配置一下管理员用户和口令。2用一个文本工具打开CATALINA_HOME\conf\tomcat-users.xml这个文件,加入如下几行:rolerolename=manager/rolerolename=admin/userusername=robbinpassword=12345678roles=admin,manager,tomcat/这样用户“robbin”就具备了超级管理员权限。重新启动Tomcat以后,你就可以使用该用户来登陆如上的两个管理工具,通过Web方式进行Tomcat的配置和管理了。2)BEAWeblogicWeblogic可以到BEA的网站上免费注册之后下载到最新的Weblogic8.1企业版,License可以免费使用1年时间,其实这已经完全足够了。Weblogic的下载连接:,Weblogic的在线文档:。3)IBMWebshpereWebsphere同样可以下载到免费的试用版本,到IBM的developerWorks网站可以看到Websphere试用产品的下载和相关的Websphere的资料,developerWorks中文网站的连接是:,Websphere的下载连接:。4)JbossJboss是免费开源的AppServer,可以免费的从Jboss网站下载:,然而Jboss的文档是不免费,需要花钱购买,所以为我们学习Jboss设置了一定的障碍。在Jdon上有几篇不错的Jboss配置文档,可以用来参考:.Java应用的运行环境答:Java的应用可以简单分为以下几个方面:1)Java的桌面应用桌面应用一般仅仅需要JRE的支持就足够了。2)JavaWeb应用Java的Web应用至少需要安装JDK和一个web容器(例如Tomcat),以及一个多用户数据库,Web应用至少分为三层:Browser层:浏览器显示用户页面Web层:运行Servlet/JSPDB层:后端数据库,3向Java程序提供数据访问服务3)Java企业级应用企业级应用比较复杂,可以扩展到n层,最简单情况会分为4层:Browser层:浏览器显示用户页面Client层:Java客户端图形程序(或者嵌入式设备的程序)直接和Web层或者EJB层交互Web层:运行Servlet/JSPEJB层:运行EJB,完成业务逻辑运算DB层:后端数据库,向Java程序提供数据访问服务4)Java嵌入式应用Java嵌入式应用是一个方兴未艾的领域,从事嵌入式开发,需要从Sun下载J2ME开发包,J2ME包含了嵌入式设备专用虚拟机KVM,和普通的JDK中包含的JVM有所不同。另外还需要到特定的嵌入式厂商那里下载模拟器。6.运行时异常与一般异常有何异同?答:异常表示程序运行过程中可能出现的非正常状态,运行时异常表示虚拟机的通常操作中可能遇到的异常,是一种常见运行错误。java编译器要求方法必须声明抛出可能发生的非运行时异常,但是并不要求必须声明抛出未被捕获的运行时异常。7.说出ArrayList,Vector,LinkedList的存储性能和特性。答:ArrayList和Vector都是使用数组方式存储数据,此数组元素数大于实际存储的数据以便增加和插入元素,它们都允许直接按序号索引元素,但是插入元素要涉及数组元素移动等内存操作,所以索引数据快而插入数据慢,Vector由于使用了synchronized方法(线程安全),通常性能上较ArrayList差,而LinkedList使用双向链表实现存储,按序号索引数据需要进行前向或后向遍历,但是插入数据时只需要记录本项的前后项即可,所以插入速度较快。8.String是最基本的数据类型吗?答:基本数据类型包括byte、int、char、long、float、double、boolean和short。java.lang.String类是final类型的,因此不可以继承这个类、不能修改这个类。为了提高效率节省空间,我们应该用StringBuffer类。9.说出Servlet的生命周期,并说出Servlet和CGI的区别。答:Servlet被服务器实例化后,容器运行其init方法,请求到达时运行其service方法,service方法自动派遣运行与请求对应的doXXX方法(doGet,doPost)等,当服务器决定将实例销毁的时候调用其destroy方法。与cgi的区别在于servlet处于服务器进程中,它通过多线程方式运行其service方法,一个实例可以服务于多个请求,并且其实例一般不会销毁,而CGI对每个请求都产生新的进程,服务完成后就销毁,所以效率上低于servlet。410.JSP的内置对象及方法。答:requestrequest表示HttpServletRequest对象。它包含了有关浏览器请求的信息,并且提供了几个用于获取cookie,header,和session数据的有用的方法;responseresponse表示HttpServletResponse对象,并提供了几个用于设置送回浏览器的响应的方法(如cookies,头信息等);outout对象是javax.jsp.JspWriter的一个实例,并提供了几个方法使你能用于向浏览器回送输出结果;pageContextpageContext表示一个javax.servlet.jsp.PageContext对象。它是用于方便存取各种范围的名字空间、servlet相关的对象的API,并且包装了通用的servlet相关功能的方法;sessionsession表示一个请求的javax.servlet.http.HttpSession对象。Session可以存贮用户的状态信息;applicationapplicaton表示一个javax.servle.Se

1 / 15
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功