ï»??xml version="1.0" encoding="utf-8" standalone="yes"?>亚洲精品国产精品国产自,国产精品一品,欧美高清一级片http://www.aygfsteel.com/ericli1982/category/15163.html学习探讨开源和webå¼€å?/description>zh-cnTue, 27 Feb 2007 08:48:51 GMTTue, 27 Feb 2007 08:48:51 GMT60java 基本试题http://www.aygfsteel.com/ericli1982/archive/2006/09/13/69452.htmlericliericliWed, 13 Sep 2006 12:18:00 GMThttp://www.aygfsteel.com/ericli1982/archive/2006/09/13/69452.htmlhttp://www.aygfsteel.com/ericli1982/comments/69452.htmlhttp://www.aygfsteel.com/ericli1982/archive/2006/09/13/69452.html#Feedback0http://www.aygfsteel.com/ericli1982/comments/commentRss/69452.htmlhttp://www.aygfsteel.com/ericli1982/services/trackbacks/69452.html1.通过什么参数分配Java内存使用åQ?br />java -Xms128m -Xmx512m

2.Treemap和Hashmap区别是什么?
TreeMap对Key˜q›è¡ŒæŽ’序åQŒè€ŒHashMap不排序。HashMap通过hashcode对其内容˜q›è¡Œå¿«é€ŸæŸ¥æ‰¾ï¼Œ 而TreeMap中所有的元素都保持着某种固定的顺序,如果你需要得åˆîC¸€ä¸ªæœ‰åºçš„¾l“果你就应该 使用TreeMapåQˆHashMap中元素的排列™åºåºæ˜¯ä¸å›ºå®šçš„)ã€?/p>

3.ä¸ÞZ½•加入åQšprivate static final long serialVersionUID?
可以利用JDKçš„bin目录下的serialver.exe工具产生ã€?br />序列化时ä¸ÞZº†ä¿æŒç‰ˆæœ¬çš„å…¼å®ÒŽ€§ï¼Œå›_œ¨ç‰ˆæœ¬å‡çñ”时反序列化仍保持 对象的唯一性。在java中serialVersionUID是唯一控制着能否反序列化成功的标志, 只要˜q™ä¸ªå€ég¸ä¸€æ øP¼Œž®±æ— æ³•反序列化成功ã€?/p>

4.JSP¾~–译和执行原ç?
JSPæ–‡äšgçš„Scriptlets在编译后ž®†è¢«åŒ…含于该JSP servletçš„service()æ–ÒŽ³•。当JSP引擎处理客户端请求时åQŒJSP Scriptlets在被è¯äh±‚的时候被执行。如果scriptlet产生输出åQŒè¾“出将在out (JSPWriter)对象中进行缓存然后最¾lˆå‘送到客户端ã€?/p>

5.怎么解决JSP/Servlet webä¸­ä¸­æ–‡äØ•ç çš„é—®é¢˜

6.JDBC中,statement,prepared statement ,Callable statement的区别是什�
Statement 接口提供了执行语句和获取¾l“果的基本方法。PreparedStatement 接口æ·ÕdŠ äº†å¤„ç?IN 参数的方法;è€?CallableStatement æ·ÕdŠ äº†å¤„ç?OUT 参数的方法ã€?br />PreparedStatement:对于同一条语句的多次执行,Statement每次都要把SQL语句发送给数据
åº?˜q™æ ·åšæ•ˆçŽ‡æ˜Žæ˜¾ä¸é«?而如果数据库支持预编è¯?PreparedStatement可以先把要执行的语句一‹Æ¡å‘¾l™å®ƒ,然后每次执行而不必发送相同的语句,效率当然提高,当然如果数据库不支持预编è¯?
PreparedStatement会象Statement一样工�只是效率不高而不需要用户工手干�
    另外PreparedStatement˜q˜æ”¯æŒæŽ¥æ”¶å‚æ•?在预¾~–译后只要传输不同的参数ž®±å¯ä»¥æ‰§è¡?大大
提高了性能.
CallableStatement:是PreparedStatement的子¾c?它只是用来执行存储过½E‹çš„.

7.什么情况下会抛出“打开游标­‘…过最大数”的异常åQ?/p>

8.XML解析中:SAX和DOM的不同点有哪些?

9.抽象¾cÕd’ŒæŽ¥å£çš„区别?

10.什么是中间�/p>

11.JSP的内¾|®å¯¹è±¡æœ‰é‚£äº›?
Out, request, response, application, session, exception, config, page, pageContext.

12.有那些方法能防止、化解对web¾|‘站的攻击?
13.如何提高讉K—®web¾|‘站的速度åQ?br />14.Java可采用的MVC框架技术有哪些åQŸä»–们的特征和适用环境如何åQ?br />Struts, WebWork, Spring, JSFâ€?/p>

15.MVC的优¾~ºç‚¹æ˜¯ä»€ä¹ˆï¼Œé€‚用范围如何åQ?br />MVC开发模式分¼›ÀL•°æ®è®¿é—®å±‚和数据表现层åQŒåƈ使开发äh员开发一个可伸羃性的强、便于扩展的控制器,来维护整个流½E‹ã€?br />16.TOMCAT配置中,有关安全的设¾|®é€‰é¡¹æœ‰å“ªäº›ï¼Ÿ
17.Apach与Tomcat配合使用åQŒæ˜¯ä¸ø™§£å†³ä»€ä¹ˆé—®é¢˜ï¼Ÿæ€Žä¹ˆå®žçްåQŸè¿è¡Œè¿‡½E‹å¦‚何?


18.Collection的四个接�br />add();
addAllåQˆï¼‰åQ?br />isEmpty();
iterator();
contains();

19.Cookie
20.多�br />21.Web上参数的传输方式
22.HashTableå’ŒHashMap的区åˆ?br />Hashtableå’ŒHashMap¾cÀLœ‰ä¸‰ä¸ªé‡è¦çš„不同之处。第一个不同主要是历史原因。Hashtable是基于陈旧的Dictionary¾cȝš„åQŒHashMap是Java 1.2引进的Map接口的一个实现ã€?
也许最重要的不同是Hashtable的方法是同步的,而HashMap的方法不是。这ž®±æ„å‘³ç€åQŒè™½ç„¶ä½ å¯ä»¥ä¸ç”¨é‡‡å–ä»ÖM½•ç‰ÒŽ®Šçš„行为就可以在一个多¾U¿ç¨‹çš„应用程序中用一个HashtableåQŒä½†ä½ å¿…™åÕdŒæ ·åœ°ä¸ÞZ¸€ä¸ªHashMap提供外同步。一个方便的æ–ÒŽ³•ž®±æ˜¯åˆ©ç”¨Collections¾cȝš„静态的synchronizedMap()æ–ÒŽ³•åQŒå®ƒåˆ›å¾ä¸€ä¸ªçº¿½E‹å®‰å…¨çš„Map对象åQŒåÆˆæŠŠå®ƒä½œäØ“ä¸€ä¸ªå°è£…çš„å¯¹è±¡æ¥è¿”å›žã€‚è¿™ä¸ªå¯¹è±¡çš„æ–ÒŽ³•可以让你同步讉K—®æ½œåœ¨çš„HashMap。这么做的结果就是当你不需要同步时åQŒä½ ä¸èƒ½åˆ‡æ–­Hashtable中的同步åQˆæ¯”如在一个单¾U¿ç¨‹çš„应用程序中åQ‰ï¼Œè€Œä¸”同步增加了很多处理费用ã€?
½W¬ä¸‰ç‚¹ä¸åŒæ˜¯åQŒåªæœ‰HashMap可以让你ž®†ç©ºå€ég½œä¸ÞZ¸€ä¸ªè¡¨çš„æ¡ç›®çš„key或value。HashMap中只有一条记录可以是一个空的keyåQŒä½†ä»ÀL„æ•°é‡çš„æ¡ç›®å¯ä»¥æ˜¯½Iºçš„value。这ž®±æ˜¯è¯ß_¼Œå¦‚果在表中没有发现搜索键åQŒæˆ–者如果发çŽîCº†æœçƒ¦é”®ï¼Œä½†å®ƒæ˜¯ä¸€ä¸ªç©ºçš„å€û|¼Œé‚£ä¹ˆget()ž®†è¿”回null。如果有必要åQŒç”¨containKey()æ–ÒŽ³•来区别这两种情况ã€?br />23.˜qè¡ŒçŽ¯å¢ƒä¸­çš„GC

24.final,finally,finalzie的区åˆ?br />finalåQ?br />final可以让你控制你的成员、方法或者是一个类是否可被覆写或ç‘ô承等功能åQŒè¿™äº›ç‰¹ç‚¹ä‹Éfinal在Java中拥有了一个不可或¾~ºçš„åœîC½åQŒä¹Ÿæ˜¯å­¦ä¹ Javaæ—¶å¿…™å»è¦çŸ¥é“和掌握的关键字之一ã€?br />final成员
当你在类中定义变量时åQŒåœ¨å…¶å‰é¢åŠ ä¸Šfinal关键字,那便是说åQŒè¿™ä¸ªå˜é‡ä¸€æ—¦è¢«åˆå§‹åŒ–便不可改变åQŒè¿™é‡Œä¸å¯æ”¹å˜çš„æ„æ€å¯¹åŸºæœ¬¾cÕdž‹æ¥è¯´æ˜¯å…¶å€ég¸å¯å˜åQŒè€Œå¯¹äºŽå¯¹è±¡å˜é‡æ¥è¯´å…¶å¼•用不可再变。其初始化可以在两个地方åQŒä¸€æ˜¯å…¶å®šä¹‰å¤„,二是在构造函æ•îC¸­åQŒä¸¤è€…只能选其一ã€?br />˜q˜æœ‰ä¸€¿Uç”¨æ³•是定义æ–ÒŽ³•中的参数为finalåQŒå¯¹äºŽåŸºæœ¬ç±»åž‹çš„变量åQŒè¿™æ ·åšòq¶æ²¡æœ‰ä»€ä¹ˆå®žé™…æ„ä¹‰ï¼Œå› äØ“åŸºæœ¬¾cÕdž‹çš„变量在调用æ–ÒŽ³•时是传值的åQŒä¹Ÿž®±æ˜¯è¯´ä½ å¯ä»¥åœ¨æ–¹æ³•中更改˜q™ä¸ªå‚数变量而不会媄响到调用语句åQŒç„¶è€Œå¯¹äºŽå¯¹è±¡å˜é‡ï¼Œå´æ˜¾å¾—很实用åQŒå› ä¸ºå¯¹è±¡å˜é‡åœ¨ä¼ é€’时是传递其引用åQŒè¿™æ ·ä½ åœ¨æ–¹æ³•中对对象变量的修改也会影响到调用语句中的对象变量,当你在方法中不需要改变作为参数的对象变量æ—Óž¼Œæ˜Žç¡®ä½¿ç”¨final˜q›è¡Œå£°æ˜ŽåQŒä¼šé˜²æ­¢ä½ æ— æ„çš„修改而媄响到调用æ–ÒŽ³•ã€?br />finalæ–ÒŽ³•
ž®†æ–¹æ³•å£°æ˜ŽäØ“final那有两个原因åQŒç¬¬ä¸€ž®±æ˜¯è¯´æ˜Žä½ å·²¾lçŸ¥é“这个方法提供的功能已经满èƒö你要求,不需要进行扩展,òq¶ä¸”也不允许ä»ÖM½•从此¾cȝ‘ô承的¾cÀL¥è¦†å†™˜q™ä¸ªæ–ÒŽ³•åQŒä½†æ˜¯ç‘ô承仍然可以ç‘ô承这个方法,也就是说可以直接使用。第二就是允许编译器ž®†æ‰€æœ‰å¯¹æ­¤æ–¹æ³•的调用转化为inlineåQˆè¡Œå†…)调用的机åˆÓž¼Œå®ƒä¼šä½¿ä½ åœ¨è°ƒç”¨finalæ–ÒŽ³•æ—Óž¼Œç›´æŽ¥ž®†æ–¹æ³•主体插入到调用处,而不是进行例行的æ–ÒŽ³•调用åQŒä¾‹å¦‚保存断点,压栈½{‰ï¼Œ˜q™æ ·å¯èƒ½ä¼šä‹Éä½ çš„½E‹åºæ•ˆçŽ‡æœ‰æ‰€æé«˜åQŒç„¶è€Œå½“ä½ çš„æ–ÒŽ³•ä¸ÖM½“非常庞大æ—Óž¼Œæˆ–你在多处调用此æ–ÒŽ³•åQŒé‚£ä¹ˆä½ çš„调用主体代码便会迅速膨胀åQŒå¯èƒ½åè€Œä¼šå½±å“æ•ˆçއåQŒæ‰€ä»¥ä½ è¦æ…Žç”¨final˜q›è¡Œæ–ÒŽ³•定义ã€?br />final¾c?br />当你ž®†final用于¾c»èín上时åQŒä½ ž®±éœ€è¦ä»”¾l†è€ƒè™‘åQŒå› ä¸ÞZ¸€ä¸ªfinal¾cÀL˜¯æ— æ³•被ä“Q何äh¾l§æ‰¿çš„,那也ž®±æ„å‘³ç€æ­¤ç±»åœ¨ä¸€ä¸ªç‘ô承树中是一个叶子类åQŒåƈ且此¾cȝš„è®¾è®¡å·²è¢«è®¤äØ“å¾ˆå®Œ¾ŸŽè€Œä¸éœ€è¦è¿›è¡Œä¿®æ”ÒŽˆ–扩展。对于final¾cÖM¸­çš„æˆå‘˜ï¼Œä½ å¯ä»¥å®šä¹‰å…¶ä¸ºfinalåQŒä¹Ÿå¯ä»¥ä¸æ˜¯final。而对于方法,ç”׃ºŽæ‰€å±žç±»ä¸ºfinal的关¾p»ï¼Œè‡ªç„¶ä¹Ÿå°±æˆäº†final型的。你也可以明¼‹®çš„¾l™final¾cÖM¸­çš„æ–¹æ³•加上一个finalåQŒä½†˜q™æ˜¾ç„¶æ²¡æœ‰æ„ä¹‰ã€?/p>

finally:
finally 关键字是å¯?Java 异常处理模型的最佌™¡¥å……ã€?finally ¾l“构使代码æ€ÖM¼šæ‰§è¡ŒåQŒè€Œä¸½Ž¡æœ‰æ— å¼‚常发生。ä‹Éç”?finally 可以¾l´æŠ¤å¯¹è±¡çš„内部状态,òq¶å¯ä»¥æ¸…理非内存资源。如果没æœ?finallyåQŒæ‚¨çš„代码就会很费解。例如,下面的代码说明,在不使用 finally 的情况下您如何编写代码来释放非内存资源:

finalizeåQ?
æ ÒŽ®Java语言规范åQŒJVM保证调用finalize函数之前åQŒè¿™ä¸ªå¯¹è±¡æ˜¯ä¸å¯è¾„¡š„åQŒä½†æ˜¯JVM不保证这个函æ•îC¸€å®šä¼šè¢«è°ƒç”¨ã€‚另外,规范˜q˜ä¿è¯finalize函数最多运行一‹Æ¡ã€?br />通常åQŒfinalize用于一些不å®ÒŽ˜“æŽ§åˆ¶ã€åÆˆä¸”éžå¸”R‡è¦èµ„源的释放åQŒä¾‹å¦‚一些I/O的操作,数据的连接。这些资源的释放å¯ÒŽ•´ä¸ªåº”用程序是非常关键的。在˜q™ç§æƒ…况下,½E‹åºå‘˜åº”该以通过½E‹åºæœ¬èín½Ž¡ç†(包括释放)˜q™äº›èµ„源ä¸ÞZ¸»åQŒä»¥finalizeå‡½æ•°é‡Šæ”¾èµ„æºæ–¹å¼ä¸ø™¾…åQŒåŞ成一¿UåŒä¿é™©çš„管理机åˆÓž¼Œè€Œä¸åº”该仅仅依靠finalize来释放资源ã€?br />



]]>
Ö÷Õ¾Ö©Öë³ØÄ£°å£º ÃÉ×ÔÏØ| ½úÖÝÊÐ| ¸ß¶û·ò| ¡²ýÏØ| º£ÄÏÊ¡| ·îÐÂÏØ| Óý¶ù| ¿ªÑôÏØ| ÄÏÕÄÏØ| ³à³ÇÏØ| ÍòÊ¢Çø| ×óÈ¨ÏØ| ¸£¶¦ÊÐ| Àû´¨ÊÐ| Á½µ±ÏØ| ÏåÔ«ÏØ| ËàÄþÏØ| άÎ÷| ͨµÀ| ¸ÞÀ¼ÏØ| ½ð´¨ÏØ| µç°×ÏØ| Ïî³ÇÊÐ| ƽÑôÏØ| Ó¢¼ªÉ³ÏØ| ×ÊÑôÊÐ| ÒåÂíÊÐ| ׿×ÊÏØ| ÜdzÇÏØ| ÕòÔ¶ÏØ| ÉÌÇðÊÐ| Âó¸ÇÌáÏØ| Áúʤ| À´°²ÏØ| Èô¶û¸ÇÏØ| ÎäÇåÇø| Æô¶«ÊÐ| Ï¢·éÏØ| ¸·ÑôÊÐ| ÁéÉ½ÏØ| ¸ßÌ¨ÏØ|