JAVA面试题及答案(基础题122道).docx
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_05.gif)
《JAVA面试题及答案(基础题122道).docx》由会员分享,可在线阅读,更多相关《JAVA面试题及答案(基础题122道).docx(17页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、JAVA面试题及答案(基础题122道)文章分类:聘请求职JAVA相关基础学问1、面对对象的特征有哪些方面1 .抽象:抽象就是忽视一个主题中与当前目标无关的那些方面,以便更充分地留意与当前目标有关的方面。抽象并 不打算了解全部问题,而只是选择其中的一部分,短暂不用部分微小环节。抽象包括两个方面,一是过程 抽象,二是数据抽象。2 ,继承:继承是一种联结类的层次模型,并且允许和激励类的重用,它供应了一种明确表述共性的方法。对象的一 个新类可以从现有的类中派生,这个过程称为类继承新类继承了原始类的特性,新类称为原始类的派生 类(子类),而原始类称为新类的基类(父类)。派生类可以从它的基类那里继承方法和
2、实例变量,并且类 可以修改或增加新的方法使之更适合特殊的须要。3 .封装:封装是把过程和数据包围起来,对数据的访问只能通过已定义的界面。面对对象计算始于这个基本概念, 即现实世界可以被描绘成一系列完全自治、封装的对象,这些对象通过一个受爱惜的接口访问其他对象。 4.多态性:多态性是指允许不同类的对象对同一消息作出响应。多态性包括参数化多态性和包含多态性。多态性语言 具有灵敏、抽象、行为共享、代码共享的优势,很好的解决了应用程序函数同名问题。2、String是最基本的数据类型吗?基本数据类型包括 byte、int、char、long、float、double boolean 和 short。类是
3、final类型的,因此不行以继承这个类、不能修改这个类。为了提高效率节约空间,我 们应当用 String Buffer3、int和Integer有什么区分Java供应两种不同的类型:引用类型和原始类型(或内置类型)。Int是java的原始数据类型,Integer是 java为int供应的封装类。Java为每个原始类型供应了封装类。 原始类型封装类 booleanBoolean charCharacter byte Byte shortShort intlnteger longLong floatFloatdoubleDouble引用类型和原始类型的行为完全不同,并且它们具有不同的语义。引用类型
4、和原始类型具有不同的特征和 用法,它们包括:大小和速度问题,这种类型以哪种类型的数据结构存储,当引用类型和原始类型用作某 个类的实例数据时所指定的缺省值。对象引用实例变量的缺省值为null,而原始类型实例变量的缺省值与 它们的类型有关。4、String 和 StringBuffer 的区分JAVA平台供应了两个类:String # StringBuffer,它们可以储存和操作字符串,即包含多个字符的字符数 据。这个String类供应了数值不行变更的字符串。而这个StringBuffer类供应的字符串进行修改。当你知 道字符数据要变更的时候你就可以运用StringBuffer。典型地,你可以运用
5、StringBuffers来动态构造字符常会跨越多个客户机请求application是是代表与整个Web应用程序相关的对象和属性。这实质上是跨越整个Web应用程序,包 括多个页面、请求和会话的一个全局作用域66、Request对象的主要方法:setAttribute(String name,Object):设置名字为 name 的 request 的参数值getAttribute(String name):返回由 name 指定的属性值getAttributeNames():返回request对象全部属性的名字集合,结果是一个枚举的实例getCookies():返回客户端的全部Cookie对象
6、,结果是一个Cookie数组getCharacterEncoding():返回请求中的字符编码方式getContentLength():返回请求的Body的长度getHeader(String name):获得协议定义的文件头信息getHeaders(String name):返回指定名字的request Header的全部值,结果是一个枚举的实例getHeaderNames():返回所以request Header的名字,结果是一个枚举的实例getlnputStream():返回请求的输入流,用于获得请求中的数据getMethod():获得客户端向服务器端传送数据的方法getParamete
7、r(String name):获得客户端传送给服务器端的有name指定的参数值getParameterNames():获得客户端传送给服务器端的全部参数的名字,结果是一个枚举的实例getParameterValues(String name):获得有name指定的参数的全部值getProtocol():获得客户端向服务器端传送数据所依据的协议名称getQueryString():获得查询字符串getRequestURIQ:获得发出请求字符串的客户端地址getRemoteAddr():获得客户端的IP地址getRemoteHost():获得客户端的名字getSession(Boolean cre
8、ate):返HI和请求相关 SessiongetServerName():获得服务器的名字getServletPath():获得客户端所请求的脚本文件的路径getServerPort():获得服务器的端口号removeAttribute(String name):删除请求中的一个属性67、J2EE是技术还是平台还是框架?J2EE本身是一个标准,一个为企业分布式应用的开发供应的标准平台。J2EE 也是一个框架,包括 JDBC、JNDk RMI、JMS、EJB、JTA 等技术。68、我们在web应用开发过程中经常遇到输出某种编码的字符,如iso88591等,如何输出一个某种编码 的字符串?Publ
9、ic String translate (String str) String tempStr = n;trytempStr = new String(str.getBytes(ISO-8859-1 *), GBK);tempStr = tempStr.trim();)catch (Exception e) System.err.println(e.getMessage();)return tempStr;69、简述逻辑操作(&,|,八)与条件操作(&,|)的区分。区分主要答两点:a.条件操作只能操作布尔型的,而逻辑操作不仅可以操作布尔型,而且可以操作数值型b.逻辑操作不会产生短路70、XML
10、文档定义有几种形式?它们之间有何本质区分?解析XML文档有哪几种方式?a:两种形式dtd schema, b:本质区分:schema本身是xml的,可以被XML解析器解析(这也是从DTD 上发展schema的根本目的),c:有DOM,SAX,STAX等DOM:处理大型文件时其性能下降的特殊厉害。这个问题是由DOM的树结构所造成的,这种结构占用的内 存较多,而且DOM必需在解析文件之前把整个文档装入内存,适合对XML的随机访问SAX:不现于DOM,SAX是事务驱动型的XML解析方式。它依次读取XML文件,不须要一次全部装载整个 文件。当遇到像文件开头,文档结束,或者标签开头与标签结束时,它会触发
11、一个事务,用户通过在其回 调事务中写入处理代码来处理XML文件,适合对XML的依次访问STAX:Streaming API for XML (StAX)71、简述 synchronized 和 java.util.concurrent.locks.Lock 的异同?主要相同点:Lock能完成synchronized所实现的全部功能主要不同点:Lock有比synchronized更精确的线程语义和更好的性能。synchronized会自动释放锁,而 Lock确定要求程序员手工释放,并且必需在finally从句中释放。72、EJB的角色和三个对象一个完整的基于EJB的分布式计算结构由六个角色组成,
12、这六个角色可以由不同的开发商供应,每个角色 所作的工作必需遵循Sun公司供应的EJB规范,以保证彼此之间的兼容性。这六个角色分别是EJB组件 开发者(Enterprise Bean Provider)、应用组合者(Application Assembler)部署者(Deployer) EJB 服务器供应者(EJB Server Provider)、EJB 容器供应者(EJB Container Provider)、系统管理员(System Administrator)三个对象是 Remote (Local)接口、Home (LocalHome)接口,Bean 类73、EJB容器供应的服务主要供
13、应声明周期管理、代码产生、持续性管理、平安、事务管理、锁和并发行管理等服务。74、EJB规范规定EJB中禁止的操作有哪些?1 .不能操作线程和线程API(线程API指非线程对象的方法如notify,wait等),2.不能操作awt, 3.不能 实现服务器功能,4.不能对静态属生存取,5.不能运用IO操作干脆存取文件系统,6.不能加载本地库.,7. 不能将this作为变量和返回,8.不能循环调用。75、remote接口和home接口主要作用remote接口定义了业务方法,用于EJB客户端调用业务方法。home接口是EJB工厂用于创建和移除查找EJB实例76、bean实例的生命周期对于 State
14、less Session Bean、Entity Bean Message Driven Bean 一般存在缓冲池管理,而对于 Entity Bean和Statefull Session Bean存在Cache管理,通常包含创建实例,设置上下文、创建EJB Object(create)业务方法调用、remove等过程,对于存在缓冲池管理的Bean,在create之后实例并不从内 存清除,而是接受缓冲池调度机制不断重用实例,而对于存在Cache管理的Bean则通过激活和去激活机 制保持Bean的状态并限制内存中实例数量。77、EJB的激活机制以Stateful Session Bean为例:其C
15、ache大小确定了内存中可以同时存在的Bean实例的数量,依据MRU 或NRU算法,实例在激活和去激活状态之间迁移,激活机制是当客户端调用某个EJB实例业务方法时, 假如对应EJB Object发觉自己没有绑定对应的Bean实例则从其去激活Bean存储中(通过序列化机制存 储实例)回复(激活)此实例。状态变迁前会调用对应的ejbActive和ejbPassivate方法。78、EJB的几种类型会话(Session) Bean ,实体(Entity) Bean 消息驱动的(Message Driven) Bean会话Bean又可分为有状态(Stateful)和无状态(Stateless)两种实体
16、Bean可分为Bean管理的持续性(BMP)和容器管理的持续性(CMP)两种79、客服端调用EJB对象的几个基本步骤设置JNDI服务工厂以及JNDI服务地址系统属性,查找Home接口,从Home接口调用Create方法创建 Remote接口,通过Remote接口调用其业务方法。80、如何给weblogic指定大小的内存?在启动Weblogic的脚本中(位于所在Domian对应服务器书目下的startServerName),增加set MEM_ARGS=-Xms32m -Xmx200m,可以调整最小内存为32M,最大200M81、如何设定的weblogic的热启动模式(开发模式)与产品发布模式?
17、可以在管理限制台中修改对应服务器的启动模式为开发或产品模式之一。或者修改服务的启动文件或者 commenv 文件,增力口 set PRODUCTION_MODE=trueo82、如何启动时不需输入用户名与密码?修改服务启动文件,增加WLSJJSER和WLS_PW项。也可以在boot.properties文件中增加加密过的用 户名和密码.83、在weblogic管理制台中对一个应用域(或者说是一个网站,Domain)进行jms及ejb或连接池等相关信 息进行配置后,实际保存在什么文件中?保存在此Domain的config.xml文件中,它是服务器的核心配置文件。84、说说weblogic中一个D
18、omain的缺省书0结构?比如要将一个简洁的helloWorld.jsp放入何书目下,然 的在阅读器上就可打入:主机:端口号/hellowodjsp就可以看到运行结果了?又比如这其中用到了一个自己写的javaBean该如何办?Domain书目服务器书目applications,将应用书目放在此书目下将可以作为应用访问,假如是Web应用, 应用书目须要满足Web应用书目要求,jsp文件可以干脆放在应用书目中,Javabean须要放在应用书目 的WEB-INF书目的classes书目中,设置服务器的缺省应用将可以实现在阅读器上无需输入应用名。 85、在weblogic中发布ejb需涉及到哪些配置文
19、件不同类型的EJB涉及的配置文件不同,都涉及到的配置文件包括ejb-jar.xml,weblogic-ejb-jar.xmlCMP实 体 Bean 一般还须要 weblogic-cmp-rdbms-jar.xml86、如何在weblogic中进行ssl配置与客户端的认证配置或说说j2ee(标准)进行ssl的配置缺省安装中运用Demoldentity.jks和DemoTrust.jks KeyStore实现SSL,须要配置服务器运用Enable SSL,配置其端口,在产品模式下须要从CA获得私有密钥和数字证书,仓九建的和加4 1丫5100 装载获得的密钥和数字证书。可以配置此SSL连接是单向还是
20、双向的。87、如何查看在weblogic中已经发布的EJB?可以运用管理限制台,在它的Deployment中可以查看全部已发布的EJB88、CORBA是什么?用途是什么?CORBA标准是公共对象请求代理结构(Common Object Request Broker Architecture),由对象管理组织 (Object Management Group,缩写为OMG)标准化。它的组成是接口定义语言(IDL),语言绑定(binding: 也译为联编)和允许应用程序间互操作的协议。其目的为:用不同的程序设计语言书写在不同的进程中运行, 为不同的操作系统开发。89、说说你所熟悉或听说过的j2ee
21、中的几种常用模式?及对设计模式的一些看法Session Facade Pattern:运用 SessionBean 访问 EntityBeanMessage Facade Pattern:实现异步调用EJB Command Pattern:运用 Command JavaBeans 取代 SessionBean,实现轻量级访问Data Transfer Object Factory:通过 DTO Factory 简化 EntityBean 数据供应特性Generic Attribute Access:通过 AttibuteAccess 接 口简化 EntityBean 数据供应特性Busines
22、s Interface:通过远程(本地)接口和Bean类实现相同接口规范业务逻辑一样性EJ B架构的设计好坏将干脆影响系统的性能、可扩展性、可维护性、组件可重用性及开发效率。项目越 困难,项目队伍越浩大则越能体现良好设计的重要性。90、说说在weblogic中开发消息Bean时的persistent与non-persisten的差别persistent方式的MDB可以保证消息传递的牢靠性,也就是假如EJB容器出现问题而JMS服务器照旧会将 消息在此MDB可用的时候发送过来,而non-persistent方式的消息将被丢弃。91、Servlet执行时一般实现哪几个方法? public void
23、init(ServletConfig config)public ServletConfig getServletConfig()public String getServletlnfo()public void service(ServletRequest request,ServletResponse response) public void destroy()Java中的23种设计模式: Factory (工厂模式), Prototype (原始模型模式), Adapter (适配器模式), Decorator (装饰模式), Command (叮嘱模式), Iterator (迭代子
24、模式), Observer (视察者模式),92、j2ee常用的设计模式?说明工厂模式。Builder (建立模式), Singleton (单例模式), Bridge (桥梁模式), Flyweight (享元模式),Factory Method (工厂方法模式),Facade (门面模式),Composite (合成模式),Proxy (代理模式),Interpreter (说明器模式),Visitor (访问者模式),Mediator (调停者模式),Memento (备忘录模式),State (状态模式),Strategy (策略模式),Template Method (模板方法模式)
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- JAVA 试题 答案 基础 122
![提示](https://www.taowenge.com/images/bang_tan.gif)
限制150内