a我考网

 找回密码
 立即注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

查看: 103|回复: 2

[考试试题] 常见的java面试笔试题大汇总(5)

[复制链接]
发表于 2012-8-4 12:33:16 | 显示全部楼层 |阅读模式
101、java中会存在内存泄漏吗,请简单描述。
9 h% R$ V/ }, ^9 R& @  会。如:int i,i2; return (i-i2); //when i为足够大的正数,i2为足够大的负数。结果会造成溢位,导致错误。: G  H- s& |# ?9 \$ B0 ~0 }
  102、java中实现多态的机制是什么?
' \5 r; ]3 z- a% ^2 s. _6 F  方法的重写Overriding和重载Overloading是Java多态性的不同表现。重写Overriding是父类与子类之间多态性的一种表现,重载Overloading是一个类中多态性的一种表现。
- e5 O0 `# S0 ?! P4 x5 }1 Y: O3 _  103、垃圾回收器的基本原理是什么?垃圾回收器可以马上回收内存吗?有什么办法主动通知虚拟机进行垃圾回收?# w  F% z) h: r$ ~) x5 E$ w
  对于GC来说,当程序员创建对象时,GC就开始监控这个对象的地址、大小以及使用情况。通常,GC采用有向图的方式记录和管理堆(heap)中的所有对象。通过这种方式确定哪些对象是"可达的",哪些对象是"不可达的"。当GC确定一些对象为"不可达"时,GC就有责任回收这些内存空间。可以。程序员可以手动执行System.gc(),通知GC运行,但是Java语言规范并不保证GC一定会执行。
; W' t- f( u! O9 b: e  104、静态变量和实例变量的区别?3 {2 L% b# c+ Y1 G/ C
  static i = 10; //常量" Z/ Q/ f7 |, G# n
  class A a; a.i =10;//可变
. W% W+ y) Q# u! J  105、什么是java序列化,如何实现java序列化?* M9 W+ R) X8 Q/ ]  y9 G
  序列化就是一种用来处理对象流的机制,所谓对象流也就是将对象的内容进行流化。可以对流化后的对象进行读写操作,也可将流化后的对象传输于网络之间。序列化是为了解决在对对象流进行读写操作时所引发的问题。
" u* A! P  }2 j/ l& n4 Y! w; P  序列化的实现:将需要被序列化的类实现Serializable接口,该接口没有需要实现的方法,implements Serializable只是为了标注该对象是可被序列化的,然后使用一个输出流(如:FileOutputStream)来构造一个 ObjectOutputStream(对象流)对象,接着,使用ObjectOutputStream对象的writeObject(Object obj)方法就可以将参数为obj的对象写出(即保存其状态),要恢复的话则用输入流。8 A+ y) C/ A  A* D1 v7 R+ M
  106、是否可以从一个static方法内部发出对非static方法的调用?
' |' E& K. J' ~# h1 T! b. C3 V  不可以,如果其中包含对象的method();不能保证对象初始化.
( Q  f6 q5 Q) F6 v& C  107、写clone()方法时,通常都有一行代码,是什么?/ M3 H2 {2 ?2 B, v3 t% s
  Clone 有缺省行为,super.clone();他负责产生正确大小的空间,并逐位复制。
+ t  n1 p6 e, I9 V" v1 [  108、在JAVA中,如何跳出当前的多重嵌套循环?
( U1 A% e9 E6 a! J  用break; return 方法。
7 U) f  W9 H& y: v/ @" A  109、List、Map、Set三个接口,存取元素时,各有什么特点?- e' }; `; v$ ~4 Y4 i: {9 N
  List 以特定次序来持有元素,可有重复元素。Set 无法拥有重复元素,内部排序。Map 保存key-value值,value可多值。
( v, o7 I' U8 B0 ]5 k2 n  110、J2EE是什么?6 a, R# b+ c* u
  J2EE 是Sun公司提出的多层(multi-diered),分布式(distributed),基于组件(component-base)的企业级应用模型 (enterpriese application model).在这样的一个应用系统中,可按照功能划分为不同的组件,这些组件又可在不同计算机上,并且处于相应的层次(tier)中。所属层次包括客户层(clietn tier)组件,web层和组件,Business层和组件,企业信息系统(EIS)层。
4 w6 U/ F0 B- B  111、UML方面
7 c" T4 d0 b; ^$ c/ A$ |* \  标准建模语言UML。用例图,静态图(包括类图、对象图和包图),行为图,交互图(顺序图,合作图),实现图。
( U' Z' z' ]0 b4 [6 X% u4 _8 J  112、说出一些常用的类,包,接口,请各举5个
- ^" ~5 {- t3 {9 R% l, X6 ]5 H& T# C  常用的类:BufferedReader BufferedWriter FileReader FileWirter String Integer
5 @. O, {2 |7 W2 X5 b$ I+ a  常用的包:java.lang java.awt java.io java.util java.sql
4 _  l$ C8 U2 r% v  常用的接口:Remote List Map Document NodeList
# u# F% R6 ~5 j8 G: J0 x  O  113、开发中都用到了那些设计模式?用在什么场合?
. T! n4 F. O! P( |" _  每个模式都描述了一个在我们的环境中不断出现的问题,然后描述了该问题的解决方案的核心。通过这种方式,你可以无数次地使用那些已有的解决方案,无需在重复相同的工作。主要用到了MVC的设计模式。用来开发JSP/Servlet或者J2EE的相关应用。简单工厂模式等。
$ s& c/ y0 t( h& o! N. `9 E  f' h  114、jsp有哪些动作?作用分别是什么?- E) q0 m+ y& K
  JSP 共有以下6种基本动作 jsp:include:在页面被请求的时候引入一个文件。 jsp:useBean:寻找或者实例化一个JavaBean。 jsp:setProperty:设置JavaBean的属性。 jsp:getProperty:输出某个JavaBean的属性。 jsp:forward:把请求转到一个新的页面。 jsp:plugin:根据浏览器类型为Java插件生成OBJECT或EMBED标记。7 }2 P" y) ?& {- f$ C" s
  115、Anonymous Inner Class (匿名内部类) 是否可以extends(继承)其它类,是否可以implements(实现)interface(接口)?
, R/ D1 z, O  d& X: `  可以继承其他类或完成其他接口,在swing编程中常用此方式。
9 ]/ o: z9 G- j, ]) i7 R$ w& [  116、应用服务器与WEB SERVER的区别?
2 m9 O) `" }. J" `* Y# u9 Q  应用服务器:Weblogic、Tomcat、Jboss
5 @6 O1 z! ^5 v  j7 z  c  WEB SERVER:IIS、 Apache3 Y! o. [- a, x/ g
117、BS与CS的联系与区别。
5 z2 F4 Q2 {* s$ ^, V  C/S是Client/Server的缩写。服务器通常采用高性能的PC、工作站或小型机,并采用大型数据库系统,如Oracle、Sybase、Informix或 SQL Server。客户端需要安装专用的客户端软件。
0 o( p, H$ D8 j: Y& J0 m8 m  B/S是Brower/Server的缩写,客户机上只要安装一个浏览器(Browser),如Netscape Navigator或Internet Explorer,服务器安装Oracle、Sybase、Informix或 SQL Server等数据库。在这种结构下,用户界面完全通过WWW浏览器实现,一部分事务逻辑在前端实现,但是主要事务逻辑在服务器端实现。浏览器通过Web Server 同数据库进行数据交互。
回复

使用道具 举报

 楼主| 发表于 2012-8-4 12:33:17 | 显示全部楼层

常见的java面试笔试题大汇总(5)

C/S 与 B/S 区别: 0 c% n! C0 ~. Q" O# K4 `, O
1.硬件环境不同: 7 Y0 Z/ T6 E6 U$ a6 C# t% ]. t, f
   C/S 一般建立在专用的网络上, 小范围里的网络环境, 局域网之间再通过专门服务器提供连接和数据交换服务.% T3 L3 O& A4 K6 O' J% r
   B/S 建立在广域网之上的, 不必是专门的网络硬件环境,例与电话上网, 租用设备. 信息自己管理. 有比C/S更强的适应范围, 一般只要有操作系统和浏览器就行 8 U* t( `& n: Z0 E2 o; b+ o
2.对安全要求不同 / E4 W) z5 ~+ H( m" I9 {3 M
   C/S 一般面向相对固定的用户群, 对信息安全的控制能力很强. 一般高度机密的信息系统采用C/S 结构适宜. 可以通过B/S发布部分可公开信息.8 Y! S- ?: X( L
   B/S 建立在广域网之上, 对安全的控制能力相对弱, 可能面向不可知的用户。
) U1 I7 b/ b) x* q3.对程序架构不同
: _2 \1 n) h( U1 _6 z+ j   C/S 程序可以更加注重流程, 可以对权限多层次校验, 对系统运行速度可以较少考虑.+ c* g* ?( S& B9 s* ~. |
   B/S 对安全以及访问速度的多重的考虑, 建立在需要更加优化的基础之上. 比C/S有更高的要求 B/S结构的程序架构是发展的趋势, 从MS的.Net系列的BizTalk 2000 Exchange 2000等, 全面支持网络的构件搭建的系统. SUN 和IBM推的JavaBean 构件技术等,使 B/S更加成熟. . ]3 z7 \+ G2 P+ @, h, I
4.软件重用不同 " I7 W. s/ r' {1 ~* `6 u+ f1 g
   C/S 程序可以不可避免的整体性考虑, 构件的重用性不如在B/S要求下的构件的重用性好.7 s8 g5 Y; r; I$ `6 W( ~
   B/S 对的多重结构,要求构件相对独立的功能. 能够相对较好的重用.就入买来的餐桌可以再利用,而不是做在墙上的石头桌子   P1 N- n' N, ?2 Q. w# y" T  D+ v
5.系统维护不同 - \5 l2 T8 z$ k' D1 R
   C/S 程序由于整体性, 必须整体考察, 处理出现的问题以及系统升级. 升级难. 可能是再做一个全新的系统; P8 j9 v% P" k: n; O! A
   B/S 构件组成,方面构件个别的更换,实现系统的无缝升级. 系统维护开销减到最小.用户从网上自己下载安装就可以实现升级.
: E+ w* y4 T- K4 ~  C5 Q# D" z6.处理问题不同 0 a5 u9 X. o. J
   C/S 程序可以处理用户面固定, 并且在相同区域, 安全要求高需求, 与操作系统相关. 应该都是相同的系统+ ?: c0 m9 M% P7 g- M4 _3 w
   B/S 建立在广域网上, 面向不同的用户群, 分散地域, 这是C/S无法作到的. 与操作系统平台关系最小. , j: r% D; H7 g& G
7.用户接口不同 7 B- K' {. Q7 p" A" m
   C/S 多是建立的Window平台上,表现方法有限,对程序员普遍要求较高' d1 Y; |( `+ A; ^
   B/S 建立在浏览器上, 有更加丰富和生动的表现方式与用户交流. 并且大部分难度减低,减低开发成本. - E6 w6 B' ^% E! p3 y
8.信息流不同
) z! F  S4 W8 T; {: L- x   C/S 程序一般是典型的中央集权的机械式处理, 交互性相对低$ x3 [* @% j1 s' g4 P4 S# o
   B/S 信息流向可变化, B-B B-C B-G等信息、流向的变化, 更像交易中心。
8 w$ Y& g( }  j7 I+ |8 B7 h$ Y6 H# i. z- w; e5 e
118、LINUX下线程,GDI类的解释。
1 N$ Q# p& M9 z' i& |) E  r  LINUX实现的就是基于核心轻量级进程的"一对一"线程模型,一个线程实体对应一个核心轻量级进程,而线程之间的管理在核外函数库中实现。
4 G: e# h% Z- z/ }2 rGDI类为图像设备编程接口类库。
# c. n. c2 g8 S. }
" c# U) }  j5 M, j3 ?119、STRUTS的应用(如STRUTS架构)
% ]7 J! m% X$ o% c  Struts 是采用Java Servlet/JavaServer Pages技术,开发Web应用程序的开放源码的framework。采用Struts能开发出基于MVC(Model-View-Controller)设计模式的应用构架。 Struts有如下的主要功能:一.包含一个controller servlet,能将用户的请求发送到相应的Action对象。二.JSP自由tag库,并且在controller servlet中提供关联支持,帮助开发员创建交互式表单应用。三.提供了一系列实用对象:XML处理、通过Java reflection APIs自动处理JavaBeans属性、国际化的提示和消息。
. J0 `0 `% m- V" ]7 _& a' v. N5 y- g# d
120、Jdo是什么? : X( X+ o1 B2 x, k, H# w+ c8 o
  JDO 是Java对象持久化的新的规范,为java data object的简称,也是一个用于存取某种数据仓库中的对象的标准化API。JDO提供了透明的对象存储,因此对开发人员来说,存储数据对象完全不需要额外的代码(如JDBC API的使用)。这些繁琐的例行工作已经转移到JDO产品提供商身上,使开发人员解脱出来,从而集中时间和精力在业务逻辑上。另外,JDO很灵活,因为它可以在任何数据底层上运行。JDBC只是面向关系数据库(RDBMS)JDO更通用,提供到任何数据底层的存储功能,比如关系数据库、文件、XML以及对象数据库(ODBMS)等等,使得应用可移植性更强。
2 O$ s9 M7 w$ S0 V5 L8 A" N; ~4 w$ p
121、内部类可以引用他包含类的成员吗?有没有什么限制?1 c+ F7 s, ]4 {: ~
一个内部类对象可以访问创建它的外部类对象的内容4 h1 S- f! x- K3 E% X! l

/ Q  V) W; L4 K- }, R7 c122、WEB SERVICE名词解释。JSWDL开发包的介绍。JAXP、JAXM的解释。SOAP、UDDI,WSDL解释。
' b% \: g/ y0 s' P) t$ m  Web ServiceWeb Service是基于网络的、分布式的模块化组件,它执行特定的任务,遵守具体的技术规范,这些规范使得Web Service能与其他兼容的组件进行互操作。1 l. @! K8 r: _
  JAXP(Java API for XML Parsing) 定义了在Java中使用DOM, SAX, XSLT的通用的接口。这样在你的程序中你只要使用这些通用的接口,当你需要改变具体的实现时候也不需要修改代码。
- K" I" w, t3 c( l  JAXM(Java API for XML Messaging) 是为SOAP通信提供访问方法和传输机制的API。
) n( s( a& W8 L" r. b% ^/ |  WSDL是一种 XML 格式,用于将网络服务描述为一组端点,这些端点对包含面向文档信息或面向过程信息的消息进行操作。这种格式首先对操作和消息进行抽象描述,然后将其绑定到具体的网络协议和消息格式上以定义端点。相关的具体端点即组合成为抽象端点(服务)。
2 a7 Z6 x  O; R1 r7 g, d8 a+ r  SOAP即简单对象访问协议(Simple Object Access Protocol),它是用于交换XML编码信息的轻量级协议。 + A. V. [% P5 o4 H8 f+ `
  UDDI 的目的是为电子商务建立标准;UDDI是一套基于Web的、分布式的、为Web Service提供的、信息注册中心的实现标准规范,同时也包含一组使企业能将自身提供的Web Service注册,以使别的企业能够发现的访问协议的实现标准。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2012-8-4 12:33:18 | 显示全部楼层

常见的java面试笔试题大汇总(5)

</p>. f8 H, w6 R: k! N( e7 g  z
123、设计4个线程,其中两个线程每次对j增加1,另外两个线程对j每次减少1。写出程序。, v" O! h' _( \8 S7 p9 K
以下程序使用内部类实现线程,对j增减的时候没有考虑顺序问题。
0 R3 k$ d% @4 J6 s- ~, [$ n
- g3 Y% A6 {, r' P7 U% p! w  c
. H* v$ M8 H$ J. w/ c4 C' [public class ThreadTest1{
6 d  x8 c8 ]% H- n* w$ hprivate int j;. Z7 z+ W# Q9 @1 ^
public static void main(String args[]){
+ r) f. [3 ^; N' T* \ThreadTest1 tt=new ThreadTest1();
( i! k+ S" T1 Y; B/ DInc inc=tt.new Inc();/ j2 }7 m: u' ^  Y
Dec dec=tt.new Dec();2 s! J# |# r, x1 X' L: V5 P% O3 l
for(int i=0;i
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|小黑屋|Woexam.Com ( 湘ICP备18023104号 )

GMT+8, 2024-5-21 19:28 , Processed in 0.449837 second(s), 25 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表