一些面试题--Java(doc8)_第1页
一些面试题--Java(doc8)_第2页
一些面试题--Java(doc8)_第3页
一些面试题--Java(doc8)_第4页
已阅读5页,还剩8页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、一些面试题 -Java1. 通过什么参数分配Java 内存使用?Java -Xms128m -Xmx512m2.Treemap 和 Hashmap区别是什么?TreeMap对 Key 进行排序,而 HashMap不排序。 HashMap通过hashcode 对其内容进行快速查找,而 TreeMap中所有的元素都保持着某种固定的顺序,如果你需要得到一个有序的结果你就应该使用 TreeMap(HashMap中元素的排列顺序是不固定的)。3. 为何加入: privatestaticfinallong serialVersionUID?可以利用 JDK的 bin 目录下的 serialver.exe工

2、具产生。序列化时为了保持版本的兼容性, 即在版本升级时反序列化仍保持 对象的唯一性。 在 J ava 中 serialVersionUID 是唯一控制着能否反序列化成功的标志, 只要这个值不一样,就无法反序列化成功。4.JSP 编译和执行原理 ?JSP文件的 Scriptlets在编译后将被包含于该JSP servlet的 service() 方法。当 JSP引擎处理客户端请求时, JSP Scriptlets- 1 -在被请求的时候被执行。 如果 scriptlet产生输出,输出将在 out(JSPWriter) 对象中进行缓存然后最终发送到客户端。5. 怎么解决 JSP/Servlet w

3、eb中中文乱码的问题6.JDBC中, statement,prepared statement ,Callablestatement 的区别是什么 ?Statement接口提供了执行语句和获取结果的基本方法。PreparedStatement接口添加了处理IN参数的方法;而CallableStatement添加了处理 OUT 参数的方法。PreparedStatement: 对于同一条语句的多次执行 ,Statement 每次都要把 SQL语句发送给数据库 , 这样做效率明显不高 , 而如果数据库支持预编译 ,PreparedStatement可以先把要执行的语句一次发给它 , 然后每次执行而

4、不必发送相同的语句, 效率当然提高 ,当然如果数据库不支持预编译, PreparedStatement会象Statement 一样工作 , 只是效率不高而不需要用户工手干预.另外 PreparedStatement 还支持接收参数 . 在预编译后只要传输不同的参数就可以执行, 大大提高了性能 .CallableStatement:是 PreparedStatement 的子类 , 它只是用来执行存储过程的 .- 2 -7. 什么情况下会抛出“打开游标超过最大数”的异常?8.XML解析中: SAX和 DOM的不同点有哪些?9. 抽象类和接口的区别?10. 什么是中间件11.JSP 的内置对象有那

5、些 ?Out, request,response,application,session,exception,config, page, pageContext.12. 有那些方法能防止、化解对 web网站的攻击?13. 如何提高访问 web网站的速度?14.Java 可采用的 MVC框架技术有哪些?他们的特征和适用环境如何?Struts, WebWork, Spring, JSF15.MVC的优缺点是什么,适用范围如何?MVC开发模式分离数据访问层和数据表现层,并使开发人员开发一个可伸缩性的强、便于扩展的控制器,来维护整个流程。16.TOMCAT配置中,有关安全的设置选项有哪些?- 3 -1

6、7.Apach 与 Tomcat 配合使用,是为解决什么问题?怎么实现?运行过程如何?18.Collection的四个接口add();addAll ();isEmpty();iterator();contains();19.Cookie20. 多态21.Web上参数的传输方式22.HashTable 和 HashMap的区别Hashtable 和 HashMap类有三个重要的不同之处。第一个不同主要是历史原因。 Hashtable 是基于陈旧的 Dictionary 类的,HashMap是 J ava 1.2 引进的 Map接口的一个实现。也许最重要的不同是Hashtable 的方法是同步的,

7、而HashMap的方法不是。这就意味着,虽然你可以不用采取任何特殊的行为- 4 -就可以在一个多线程的应用程序中用一个Hashtable ,但你必须同样地为一个 HashMap提供外同步。一个方便的方法就是利用Collections 类的静态的 synchronizedMap() 方法,它创建一个线程安全的 Map对象,并把它作为一个封装的对象来返回。这个对象的方法可以让你同步访问潜在的 HashMap。这么做的结果就是当你不需要同步时,你不能切断 Hashtable 中的同步(比如在一个单线程的应用程序中),而且同步增加了很多处理费用。第三点不同是,只有 HashMap可以让你将空值作为一个

8、表的条目的 key 或 v alue 。HashMap中只有一条记录可以是一个空的key,但任意数量的条目可以是空的 v alue 。这就是说,如果在表中没有发现搜索键,或者如果发现了搜索键,但它是一个空的值,那么 get() 将返回 null 。如果有必要,用 containKey() 方法来区别这两种情况。23. 运行环境中的 GC24.final,finally,finalzie的区别final:final 可以让你控制你的成员、方法或者是一个类是否可被覆写或继承等功能, 这些特点使 final 在 J ava 中拥有了一个不可或缺的地位,也是学习 J ava 时必须要知道和掌握的关键字

9、之一。- 5 -final成员当你在类中定义变量时, 在其前面加上 final 关键字,那便是说,这个变量一旦被初始化便不可改变,这里不可改变的意思对基本类型来说是其值不可变,而对于对象变量来说其引用不可再变。其初始化可以在两个地方,一是其定义处,二是在构造函数中,两者只能选其一。还有一种用法是定义方法中的参数为 final ,对于基本类型的变量,这样做并没有什么实际意义,因为基本类型的变量在调用方法时是传值的,也就是说你可以在方法中更改这个参数变量而不会影响到调用语句,然而对于对象变量,却显得很实用,因为对象变量在传递时是传递其引用,这样你在方法中对对象变量的修改也会影响到调用语句中的对象变

10、量,当你在方法中不需要改变作为参数的对象变量时,明确使用 final 进行声明,会防止你无意的修改而影响到调用方法。final方法将方法声明为 final那有两个原因,第一就是说明你已经知道这个方法提供的功能已经满足你要求,不需要进行扩展,并且也不允许任何从此类继承的类来覆写这个方法,但是继承仍然可以继承这个方法,也就是说可以直接使用。第二就是允许编译器将所有对此方法的调用转化为inline(行内)调用的机制,它会使- 6 -你在调用 final 方法时,直接将方法主体插入到调用处,而不是进行例行的方法调用,例如保存断点,压栈等,这样可能会使你的程序效率有所提高,然而当你的方法主体非常庞大时,

11、或你在多处调用此方法,那么你的调用主体代码便会迅速膨胀,可能反而会影响效率,所以你要慎用 final 进行方法定义。final类当你将 final用于类身上时,你就需要仔细考虑,因为一个final类是无法被任何人继承的, 那也就意味着此类在一个继承树中是一个叶子类,并且此类的设计已被认为很完美而不需要进行修改或扩展。 对于 final 类中的成员, 你可以定义其为 final ,也可以不是 final 。而对于方法, 由于所属类为 final 的关系,自然也就成了 final 型的。你也可以明确的给 final 类中的方法加上一个 final ,但这显然没有意义。finally:finally关键字是对 Java 异常处理模型的最佳补充。finally结构使代码总会执行,而不管有无异常发生。使用finally可以维护对象的内部状态,并可以清理非内存资源。如果没有 finally,您的代码就会很费解。例如,下面的代码说明,在不使用 finally的情况下您如何编写代码来释放非内存资源:- 7 -finalize:根据 Java 语言规范, JVM保证调用 finalize函数之前,这个对象是不可达的,但是JVM不保证这个函数一定会被调用。另外,规范还保证finaliz

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论