第一篇:JAVA三级程序员培训题库(标红为答案)
JAVA(三级)
客 观 题 库 复习
(标红为答案)
一、单选题(175)
1.下面关于ajax的工作原理描述是错误的是?
A.相当于在用户和服务器之间加了一个中间层,使用户操作与服务器响应异步化
B.把一些服务器负担的工作转嫁到客户端,利用客户端闲置的处理能力来处理
C.不是所有的用户请求都提交给服务器 D.所有数据由Ajax引擎代为向服务器提交请求
2.下面关于使用ajax的理由说法错误的是? A.跨平台,跨浏览器 B.基于公开标准
C.以用户体验和可用性为主 D 服务端技术的确定性
3.下面关于ajax中http就绪状态描述错误的是
A.0:请求没有发出(在调用 open()之前)。
B.1:请求已经建立但还没有发出(调用 send()之前)。
C.· 2:请求已经发出正在处理之中(这里通常可以从响应得到内容头部)。D.· 3:响应已完成,可以访问服务器响应并使用它。4. 下面关于ajax的构成描述正确的是:
A.ajax就是asp+java+xml B.ajax就是applet+jsp+xmlt C.ajax就是applet+java+htmlt D.ajax就是javascript+xml+dom+dhtml 5.以下对请求头方法的功能说明错误的是:
A.getCookies方法会返回Cookie头的内容,解析后会存放在Cookie对象的数组中 B.getHeaderNames方法返回当前请求的所有头的名称的字符串对象 C.getMethod方法返回请求方法,通常是GET或者POST D.getProtocol返回HTTP版本号
6.下面关于XmlHttpRequest对象的方法描述错误的是:
A.open():建立到服务器的新请求 B.send():向服务器发送请求。
C.readyState:提供当前 HTML 的就绪状态。D.abort():服务器返回的请求响应文本。7.下面关于servlet生命周期说法错误的是:
A.servlet在整个生命周期中只执行一次service方法
B.在Servlet的生命周期中,仅执行一次init方法,是在服务器装入Servlet时执行的
C.缺省的服务功能是调用与Http请求方法相应的do功能 D.缺省的init()方法设置了Servlet的初始化参数,并用它的ServletConfig对象参数来启动配置 9.关于 Servlet说法错误的是 A.servlet用于构建动态网页
B.用户编写servlet必须显示的定义一个构造方法 C.servlet用于处理业务逻辑
D.servlet可以根据用户不动的请求做出不动的响应
10.关于Servlet说法正确的是
A.自己编写的servlet必须实现servlet接口 B.dopost()方法和doget()方法必须同时存在 C.servlet的工作方式基于请求/响应
D.servlet的init()方法每当servlet调用时都执行一次 11. jsp的特点有哪些描述是错误的
A.平台无关性
B.经编译后是一个servlet C.不采用多线程 D.可以嵌入java代码 12.关于jsp描述错误的是
A.不依赖可以重用的组件来执行应用程序 B.java语言实现,可以跨平台 C.与servlet一样,采用多线程 D.将内容显示与生成相分离 13.关于jsp描述正确的是
A.page: 在这个范围内定义的对象只与当前页面相关
B.request:在这个范围内定义的对象只与在同一个请求间的页面相关 C.application:会话范围允许你创建并且将对象绑定到一个会话上面 D.session:绑定在会话范围的对象在不需要的时候要显示的删除 14.关于jsp的说法正确的是
A.jsp中具有三种作用范围分别是page,session,request B.jsp:param只能在jsp:forward中使用
C.使用include指令来包含一个文件,该文件只能是jsp文件
D.jsp:useBean用来在页面中创建一个Bean实例并指定它的名字和作用范围
15.关于jsp的说法错误的是
A.JSP内部对象需要由JSP的编写者实例化
B.
C.
D.表达式就是位于<% =和%>之间的代码。
16.从HTTP请求中,获得请求参数,应该调用哪个方法? A调用HttpServletRequest对象的getAttribute()方法 B调用ServletContext对象的getAttribute()方法 C调用HttpServletRequest对象的getParameter()方法 D 调用HttpServletRequest对象的setAttribute()方法 17.关于spring框架描述错误的是
A.Spring是一个开源框架,它是为了解决企业应用开发的复杂性而创建的 B.使用基本的JavaBean代替EJB,并提供了更多的企业应用功能 C.spring应用中的对象依赖于Spring的特定类。D.Spring包含并管理应用对象的配置和生命周期 18.关于struts框架描述错误的是
A.Struts 是MVC的一种实现,它将 Servlet和 JSP 标记(属于 J2EE 规范)用作实现的一部分
B.在Struts中,承担MVC中Controller角色的是一个Servlet C.在Struts中,用户的请求必须以*.do作为请求服务名 D.:Struts的核心是ActionSevlet,ActionSevlet的核心是Struts-config.xml 19.关于hibernate框架描述正确的是
A.不基于jdbc
B.提供了强壮的结构映射关系
C.大大减轻了日常的数据持久化编程任务 D.供强大的事务处理机制 20.关于struts2的描述错误的是
A.Struts-config.xml集中了所有页面的导航定义
B.ActionServlet 是struts框架 MVC 实现的 controller 部分,它是这一框架的核心。
C.Action 类是业务逻辑的一个包装。Action 类的用途是将 HttpServletRequest 转换为业务逻辑。D.每个子应用对应一个单独的web.xml文件 21.关于struts2的描述正确的是
A.ActionMapping帮助控制器将请求映射到操作 B.ActionForward用来指示操作转移的对象 C.ActionError用来存储和回收错误 D.Action是控制器
22.关于struts2体系结构的描述错误的是
A.从视图角度(View),struts自身包含了一组可扩展的自定义标签库(TagLib),可以简化创建用户界面的过程。
B.ActoinServlet必须在Web Application配置文件(web.xml)中描述 C.在Struts2 framework中,Controller主要是ActionServlet D ActionServlet继承不是来自javax.servlet.http.HttpServlet类 23.关于ActionServlet的描述错误的是 A.截获用户的Http请求
B.把这个请求映射到相应的Action类。C.调用Action实例的perform()方法
D.perform返回一个ActionForm对象,根据方法执行情况转到相应的jsp页面.24.有关Struts Action Mapping的配置描述错误的是 A.form-bean B.action-forwards C.action-mappings D.data-sources 25.关于ActionError的描述错误的是
A.ActionError类定义了一组重载的构造器来创建错误信息
B.ActionError类从不独立进行错误处理,它们总是被存储在ActionErrors对象中。
C ActionErrors的size()返回错误的数目 D.ActionErrors的empty()清除所有的错误 26.关于mvc模式的说法错误的是
A.Struts 是MVC的一种实现,它将Servlet和 JSP 标记(属于 J2EE 规范)用作实现的一部分
B.MVC即Model-View-的缩写,是一种常用的设计模式 C.Controller——控制整个framework中各个组件的协调工作 D.view——用于处理业务逻辑
27.一般来说,在多个并发线程正在执行的时候,如果有一个新的请求到来,Servlet容器将构造Servlet的一个实例,为每个用户请求建立一个新进程,这意味着,多个线程可能同时访问一些共享数据。如果要阻止这种多线程的访问,可以使Servlet实现哪个接口?
A.NewThreadModel 接口 B.NewServlet接口 C.SingleThreadModel 接口 D.SingleServlet 接口
28.以下哪种情况可能不会初始化servlet?
A.服务器down机后,重新装入servlet时
B.已经配置了自动装入选项,在启动服务器时自动装入servlet C.没有配置自动装入选项,在服务器启动后,客户端首次向 Servlet 发出请求时
D.新客户端向Servlet 发出请求时 29.以下关于XML描述错误的是
A.主要用来存储和发送数据信息,以便各种基于WEB的应用之间能更方便的交换数据。
B.XML也是一种基于文本的标记语言 C.内容描述与显示方式整合为一体 D.编辑、浏览工具尚不成熟
30.以下关于XML特点描述正确的是
A.简洁有效 B.易学易用 C.不可扩充 D.开放的国际化标准
31.以下关于XML描述错误的是
A.XML可以用来描述数据,重点是“数据是什么” B.XML的标记不是在XML中预定义的,你必须定义自己的标记 C.XML使用文档类型定义(DTD)或者模式(Schema)来描述数据 D.XML不能跨平台。
32.XML 文档中的处理指令可以使用以下哪一项来标识? a)
和
定界符 b)
33.____________ 用来避免指定诸如引号、“<”、“>”符号等之类的值作为生的冲突。a)实体引用 b)XML 实体 c)命名空间 d)XSL 34.要把 HTML 代码界定在 XML 标记中。以下哪一项是用于该目的的? a)CDATA b)实体引用 c)XML 处理指令 d)以上都不是
35.以下关于XML基本语法描述正确的是
A.元素不区分大小写 B.元素可以嵌套,可以重叠 C.属性取值必须要加引号 D.可以以字母串“xml”开头
36.以下关于XML基本语法描述错误的是
A.不严格要求标记配对 B.不能以数字开头 C.不能包含空格 D.不可以以字母串“xml”开头 37.以下关于XML基本语法描述错误的是 A.可以包含斜杠“/” B.可以冒号开头,C.属性必须有值 D.字符串不能包含“<”
38.关于spring的描述错误的是
A.Spring是一个开源框架,它是为了解决企业应用开发的复杂性而创建的 B.Spring使用基本的JavaBean来完成以前只可能由EJB完成的事情。C.Spring将使用接口的复杂度降低到零
D.Spring应用中的对象依赖于Spring的特定类。39.Spring框架由以下哪些模块组成,错误的是
A.核心容器
B.应用上下文(Context)模块 C.Spring的IOC模块 D.JDBC抽象和DAO模块
40.以下哪个方法不是Servlet的生命周期接口定义的?
A.init()B.service()C.destroy()D.create()
41.关于Spring IoC容器的使用正确的是
A.一个bean至少需要一个id(或者是name)属性和一个class属性(attribute)B.指定依赖关系时,bean:从同一个XML中或另一个已经导入到ApplicationContext中的XML文件查找所依赖的
C.一个bean的依赖关系是指这个进行操作时所依赖的一种属性。D.依赖指向了一个简单的数值
42.关于Spring IoC容器的使用错误的是
A.由容器控制程序之间的(依赖)关系,而非传统实现中,由程序代码直接操控
B.促进了松耦合
C.增加了组件之间的依赖关系,同时也大大提高了组件的可移植性 D.依赖注入分为接口注入,设置方法注入两种实现形式
43.下述Servlet的处理流程中表述不正确的步骤是:
A.客户端发送一个请求至服务器端;服务器将请求信息发给Servlet; B.Servlet引擎,也就是ejb容器会调用Servlet的service方法; C.Servlet构建一个响应,并将其传给服务器。这个响应是动态构建的,相应的内容通常取决于客户端的请求,这个过程中也可以使用外部资源。D.服务器将响应返回给客户端。
44.关于spring整合hibernate说法正确的是
A Hibernate中的模版回调机制包含一个HibernateTemplate和一个回调接口 B spring管理Hibernate的资源
C Dao类继承HibernateDaoSupport类后,可以使用getHibernateTemplate(),getSession(), D HibernateTemplate不可以公用多个DAO
45. Customer类中有一个Set类型的orders属性,用来存放Order订单对象,在Customer.hbm.xml文件中,用哪个元素映射orders属性? A 46.在hibernaet中实体关系映射描述错误的是 A 一对一 B 一对多 C多对多包括单向多对多和双向多对多 D 单向多对多与双向多对多没有任何区别 47.一般情况下,关系数据模型与对象模型之间有哪些匹配关系 A表对应类 B记录对应对象 C表的字段对应类的属性 D表之间的参考关系对应类之间的依赖关系 48.事务隔离级别是由谁实现的? A Java应用程序 B Hibernate C 数据库系统 D JDBC驱动程序 49.对Session中的方法描述错误的是? A.在同一Session中更新---save()方法 B.更新从session脱离的对象---update()方法 C.saveOrUpdate()方法同时包含了save()和 update()两个功能。D.saveOrUpdate()方法中如果传入的对象是游离对象,就调用save()方法 50.以下哪些属于Session的方法? A)close()B)save()C)delete()D)getConnection() 51.对Session中的方法描述错误的是? A.session的save()方法把一个临时对象转变为持久话对象 B.session的load(),get()方法返回的对象总是处于持久化状态 C.session的save(),find()方法返回的list集合中存放的都是持久话对象 D.session在清理缓存时,不会根据持久化对象的属性变化来同步更新数据库 52对关于hibernate描述正确的是? A大大减轻了日常的数据持久化编程任务 B提供了强壮的结构映射关系 C提供强大的事务处理机制 D不可仪在使用jdbc的场合使用 54.关于HQL与SQL,以下哪些说法正确? A HQL与SQL没什么差别 B HQL面向对象,而SQL操纵关系数据库 C 在HQL与SQL中,都包含select,insert,update,delete语句 D HQL仅用于查询数据,不支持insert,update和delete语句 55.在java中,可以使线程恢复运行的方法是哪个。 a.init();b.start();c.run();d.resume(); 57.在Java语言中,类Student是类Person的子类,Student的构造方法中有一句“super()”,该语句表达了什么概念?(选择1项)a.调用类Worker中定义的super()方法 b.调用类Person中定义的super()方法 c.调用类Person的构造方法 d.语法错误 58.现在需要建立自制类MyClass,同时需要将此类放入自制包MyPackage,正确的声明方法为?(选择1项)a.public class MyPackage.MyClass{} b.public class MyClass in MyPackage{} c.package MyPackage;public class MyClass{} d.public package MyPackage;classMyClass{} 59.关于struts标签的用法说法正确的是 A用于定义新bean、访问bean及其属性的标记 B D A B 61.关于struts国际化描述错误的是 A struts框架对国际化的支持是只须使用 D运行一个国际化的web站点,它可以根据用户计算机上的设置的区域自动以相应的语言显示。 63、有关类的说法正确的是?()A.类具有封装性,所以类的数据是不能被访问的 B.类具有封装性,但可以通过类的公共接口访问类中的数据 C.声明一个类时,必须用public修饰符 D.每个类中,必须有main方法,否则程序无法运行 64、为了区分重载多态中同名的不同方法,要求()。A. 采用不同的参数列表 B. 返回值类型不同 C. 调用时用类名或对象名做前缀 D. 参数名不同 65、Hashtable实现以下哪个接口? A.java.util.Map B.java.util.List C.java.util.Hashable D.java.util.Collection 66、下面关于集合的说法正确的是? A.List 接口继承了Collection 接口以定义一个不允许重复项的有序集合。B.ArrayList 和LinkedList是List接口的实现类。 C.要支持随机访问,选择LinkedList类较好,而顺序的访问列表元素使用ArrayList类更好。 D.Set 接口继承Collection 接口,而且它允许集合中存在重复项。67、下面关于ArrayList的说法正确的是? A.ArrayList()可以构造一个初始容量为5 的空列表。 B.ArrayList初始化时用户可以自定义ArrayList对象的初始容量。C.ArrayList对象中只能存放同一数据类型的数据。D.ArrayList对象中不能存放NULL。68、哪种方式能将新的内容追加到一个文本文件 “file.txt”? A.OutputStream out=newFileOutputStream(“file.txt”);B.OutputStream out=newFileOutputStream(“file.txt”, “append”);C.FileOutputStreamout = new FileOutputStream(“file.txt”,true);D.FileOutputStrea out=newFileOutputStream(new file(“file.txt”));69、在读字符文件Employee.dat时,使用该文件作为参数的类是 A.BufferReader B.DataInputStream C.DataOutoutStream D.FileInputStream 70、下列哪个选项不是FilterInputStream的子类? A.CheckedInputStream B.BufferedInputStream C.PushbackInputStream D.FileInputStream 71、在JAVA语言网络编程中,URL类是在java.net包中,该类中提供了许多方法用来访问URL对象的各种资源,下列哪个用来获取URL中的端口号。A、getFile()B、getProtocol()C、getHost()D、getPort() 72、要使用Java语言开发socket程序,需要使用()包。(输入输出处理网络编程)A、java.net B、java.io C、java.awt D、java.util 73、JAVA语言中的套接字(Socket)是一种基于网络进程通信的接口,是网络通信协议的一种应用。它有两个主要类,下列哪个在Application应用程序中实现客户端的通信功能。()(输入输出处理网络编程)A、ServerSocket类 B、URL类 C、Socket类 D、Client 74、Thread类用来创建和控制线程,一个线程从下面()方法开始执行。(java线程的概念)A、init()B、start()C、run()D、notifyAll()75、下列有关线程的叙述哪个是正确的?(java线程的概念) A)一旦一个线程被创建,它就立即开始运行 B)调用start()方法可以使一个线程成为可运行的,但是它不一定立即开始运行 C)主线程不具有默认优先级 D)Java中线程的优先级从低到高以整数0~9表示 76、resume()方法负责恢复被哪个方法挂起的线程?(java线程的概念) A)stop() B)sleep() C)wait() D)suspend() 77、关于JAVA中垃圾回收机制的说法正确的是?(垃圾回收机制的两种方法)A、Java技术提供了一个轻量级的线程,即垃圾收集器线程,来跟踪每一块分配出去的内存空间。 B、当JVM处于空闲时,垃圾收集器线程会自动检查每一块分配出去的内存空间。C、当程序运行结束后,所有创建的对象都会被自动清除出内存空间。D、垃圾收集线程在一个Java程序中的执行是自动的,也可以强制执行 78、关于JAVA中垃圾回收的说法正确的是?(垃圾回收机制的两种方法)A、当没有对象引用指向原先分配给某个对象的内存时,该内存便成为垃圾。 B、垃圾收集意味着程序不再需要的对象是“无用信息”,这些信息将被回收。C、JAVA中垃圾收集是自动完成的。 D、JAVA中垃圾收集的所有算法都能100%清除废弃内存。79、下面哪个不属于垃圾回收算法?(垃圾回收机制的两种方法)A、引用计数法 B、tracing算法 C、generation算法 D、选择算法 80、下面哪些是java语言中的关键字?(Java编码规范)A sizeof B abstract C NULL D Native 81、下面语句哪个是正确的?(Java编码规范)A char='abc';B byte b=128;C floatf=0.23;D double=0.7E-3;82、如下哪些字串是Java中的标识符?(Java编码规范)A、fieldname B、super C、3number D、#number 83、关于JAVA序列化与反序列化的说法正确的是?(Java序列化与反序列化的概念) A、对象序列化是指将对象转换为字节序列的过程,而反序列化则是根据字节序列恢复对象的过程。 B、任何类的对象都能被序列化 C、对实现了Serializable接口的类,采用默认的反序列化方式 D、实现了Externalizable接口的类,采用默认的序列化方式 84、对于JAVA序列化作用的解释,不正确是?(Java序列化与反序列化的概念)A、永久性保存对象,保存对象的字节序列到本地文件中 B、通过序列化对象在网络中传递对象 C、通过序列化在进程间传递对象 D、通过序列化能使JAVA程序顺序进行 85、关于对象序列化的说法,正确的是?(java序列化和反序列化) A、序列化就是将一个对象的状态和动作都保存起来,然后在适当的时候再获得。B、如果某个类能够被序列化,而其子不一定能被序列化。C、声明为static和transient类型的成员数据不能被序列化。D、对象序列化不能实现分布式对象。 86、关于内部类的叙述不正确的是?(Java内部类的概念) A、一个内部类的对象能够访问创建它的外部类对象的所有属性及方法 B、对于同一个包中的其它类来说,内部类可以用private修饰,将自己隐藏起来。 C、内部类可定义在方法中,称为局部内部类,但它只能使用方法中的final常量。D、内部类不能被abstract修饰。 87、关于内部类的说法正确的是?(Java内部类的概念)A、定义在一个类内部的类叫内部类 B、不包含内部类的类称为外部类 C、内部类只能声明public访问限制 D、内部类不能访问外部类的所有方法与属性 88、关于内部类的解释不正确的是?(Java内部类的概念)A、内部类只能被它的外部类,不能再被其他的类使用。B、内部类可以将一些非面向对象的语句块对象化。C、使用内部类,可以使得代码更加灵活和富有扩展性 D、内部类的好处很多,我们应该在任何时候都要使用内部类。89、以下那种类型的对象哪个被throw抛出?(Java异常处理的概念)A.collection B.Event C.Object D.Exception 90、哪个关键字可以抛出异常?(Java异常处理的概念)A、transient B、finally C、throw D、static 91、在java的一个异常处理中,哪个语句块可以有多个?(Java异常处理的概念)A、catch B、finally C、try D、throws 92、软件生命周期中所花费用最多的阶段是(软件开发的生命周期)A)详细设计 B)软件编码 C)软件测试 D)软件维护 93、下列选项中不属于软件生命周期开发阶段任务的是。(软件开发的生命周期)A)软件测试 B)概要设计 C)软件维护 D)详细设计 94、软件开发的结构化生命周期方法将软件生命周期划分成(软件开发的生命周期)。 A)定义、开发、运行维护 B)设计阶段、编程阶段、测试阶段 C)总体设计、详细设计、编程调试 D)需求分析、功能定义、系统设计 95、下列叙述不正确的是(软件开发的特点) A、面向对象的技术已经在现在的软件开发中占据了主流的位置 B、软件开发过程中的任何一个活动都是为了能够产出优秀的代码。所以,代码才是核心。 C、软件的开发过程中如果有一个环节的发生变化变化,不一定会对其它的环节产生影响。 D、目前软件开发慢慢想工程化发展。 96、对于面对对象的软件开发描述不正确的是(软件开发的特点) A、对于面向对象来说,它最重要的改进就是把世间万物都描述为对象,符合人的正常思维。 B、从程序员的角度看来,面向对象代码更侧重于对象之间的交互,多个对象各司其职,相互协作以完成目标。 C、面对对象软件开发是以软件模块为单位来分配任务。 D、面对对象的优势之一是能够提高代码的重用性,减少程序员的开发工作量。 98、下列叙述中正确的是(软件工程的开发步骤)A)软件测试应该由程序开发者来完成 B)程序经调试后一般不需要再测试 C)软件维护只包括对程序代码的维护 D)以上三种说法都不对 99、软件需求分析是保证软件质量的重要步骤,它的实施应该是在(软件工程的开发步骤) A、编码阶段 B、软件开发全过程 C、软件定义阶段 D、软件设计阶段 100、在瀑布模型中,将软件划分为若干个时期,软件项目的可行性研究一般归属于(软件工程的开发步骤)。A、维护时期 B、计划时期 C、运行时期 D、开发时期 103、对于网络拓扑结构中的星型结构描述不正确的是(网络拓扑结构)A、星形拓扑控制简单。 B、星形拓扑故障诊断和隔离容易。C、星形拓扑方便服务。 D、星形拓扑各站点的分布处理能力较强。1 110、对于JDBC的技术说法不正确的是 A、JDBC是一种用于执行SQL语句的java API B、JDBC可以为多种关系数据库提供统一的访问接口 C、JDBC由一组用java语言编写的类与接口组成 D、用户能够通过JDBC使用特定的SQL语言来存取数据库中的数据 答案:D 111.为MyClass类的一个无参数无返回值的方法method书写方法头,使得使用类名MyClass作为前缀就可以调用它,该方法头的形式为什么?()a.static voidmethod()b.public void method()c.final void method()d.abstract void method() 117.为了使模块尽可能独立,要求()。 A. 模块的内聚程度要尽量高,且各模块间的耦合程度要尽量强 B.模块的内聚程度要尽量高,且各模块间的耦合程度要尽量弱 C. 模块的内聚程度要尽量低,且各模块间的耦合程度要尽量弱 D. 模块的内聚程度要尽量低,且各模块间的耦合程度要尽量强 120.现在我们打算在java中进行强制垃圾收集以达到立刻减少资源占用的目的,我们应该怎么办?(选择1项)a.java中做不到强制垃圾收集 b.调用System.gc()方法 c.调用Runtime.gc()方法 d.将针对对象的引用设为null 123.不允许作为类及类成员的访问控制符的是哪个项目?(选择1项)。 a.public b.private c.static d.protected 125.设 x = 1 , y = 2 , z = 3,则表达式 y+=z--/++x-x 的值是?(选择1项)a.0 b.1 c.2 d.3 126.设有四个线程,它们的优先级分别为如下四种之一。则那种级别的线程优先执行? A.Thread.MIN_PRIORITY B.Thread.MAX_PRIORITY C.Thread.NORM_PRIORITY D.优先级别码为 7 级 127.在Java语言中,下面关于构造函数的描述正确的是()。(构造函数)a)类必须有显式构造函数 b)它的返回类型是void c)它和类有相同的名称,但它不能带任何参数 d)以上皆非 128.在Java语言中,类Worker是类Person的子类,Worker的构造方法中有一句“ super()”,该语句()。(“super”关键字)a)调用类Worker中定义的super()方法 b)调用类Person中定义的super()方法 c) 调用类Person的构造函数 d)语法错误 129.在多线程的同步通讯应用编程中,常常使用wait()来控制某一线程,但wait()方法应在如下何种方法中才可被调用 A.synchronized方法中。B.public 成员方法中。C.abstract 成员方法中。D.static 成员方法中。 130.在Java语言中,小明在他的类SquareRoot中定义了方法method_A,其中包含语句: double my_result = Math.sqrt(1000);他需要导入()。(导入包和java.lang包)a) Java.lang.* b)Java.Math.* c)Java.util.Math.*;d)以上皆非 131.在Java语言中,小明在他的包mypackage中定义了类My_Class,在mypackage的子包mysubpackage中也有个类My_Class。小明用 import mypackage.*;引入包,执行其中的语句: My_Class NewClass = newMy_Class();时,将发生()。(包)a) 创建一个类mypackage.My_Class的对象 b)创建一个类mypackage.mysubpackage.My_Class的对象 c)该语句是错误的 d)创建一个类mypackage.My_Class的对象和一个类mypackage.mysubpackage.My_Class的对象 132.方法resume()可以恢复哪些线程的执行? A.通过调用stop()方法而停止的线程。B.通过调用sleep()方法而停止运行的线程。C.通过调用wait()方法而停止运行的线程。D.通过调用suspend()方法而停止运行的线程。 133使用()修饰符时,一个类能被同一包或不同包中的其他类访问。饰符)a)private b)pretected c)public d)friendly 134.访问修饰符限制性最高的是()。(访问修饰符)a)private b)protected c)public 修(JAVAd)friendly 135、下列关于对java中的异常的描述,哪一种是正确的? A.java中的异常是指在编译过程中所产生的语法错误。B.java中的异常是指用户编程时用错了Java的语句。 C.java中的异常是指Java程序在运行过程中所产生的运行错误。D.java中的异常是指Java程序的类加载时的错误。 136.在Java中,要想使定义该类所在的包外的类不能访问这个类应用的关键字是()。(修饰符)a) 不需要任何关键字 b)private c)final d)protected 137.欲扩充java中的异常类型以实现用户特定的应用环境下的异常处理,则用户程序 A.必须重写JDK中的 Exception类 B.必须继承JDK中的某一异常类,并重写自己的异常处理的成员方法。C.必须实现JDK中的Exception接口。 D.必须继承JDK中的Error类,并重写自己的异常处理的成员方法。 138.在Java中,下面描述正确的是()。(try块)a) try块中可以有嵌套try块 b)try块后最多可以跟随3个catch块 c)try块可以单独存在 140、软件开发周期中最简短的阶段是: A.需求分析 B.系统设计 C.软件开发 D.问题定义 141.在J2EE中,要创建一个新目录,你可用如下()类的实例。类的方法)a)File b)FileOutputStream c)PrintWriter d)BufferedReader 142.下列哪些阶段不属于软件开发周期? A软件定义 B软件开发 C软件维护 D软件推销 和文件有关的(145、关于垃圾收集的哪些叙述是对的? A.程序开发者必须自己创建一个线程进行内存释放的工作。B.垃圾收集将检查并释放不再使用的内存。 C.垃圾收集允许程序开发者明确指定并立即释放该内存。D.垃圾收集能够在期望的时间释放被java对象使用的内存。 146.在J2EE中,对于ServletRequest接口的获取请求参数的方法的描述,正确的是()。(获取请求参数的方法)a)getParameter方法只用于接收POST请求参数,接收GET请求参数需要使用getQueryString方法 b)如果一个参数key有多个值,那么getParameter(key)方法会返回空字符串 c) 如果一个参数key有多个值,那么getParameterValues(key)方法会返回一个包含所有值的字符串数组 d)getParameter方法返回Object对象,使用前要强制类型转换:如String str=(String)request.getParameter(key) 152.在J2EE中,对于我们自己设计的Bean,应该()。(Bean)a)一定要继承java.beans.Beans b)一定要实现Runnalbe接口 c)一定要继承java.lang.Thread类 d) 可以不继承java.beans.Beans 153、关于java的面向对象的编程特性中的封装机制,以下说法正确的是? A.将问题的特征属性与问题的功能方法相组合在一起形成一个类。B.将问题的特征属性与问题的功能方法相分离,形成各自的程序。C.将问题的特征属性内嵌到问题的功能方法的定义体中。 D.对具体问题只需给出其功能实现方法,而不必给出其特征属性的定义。154、下列关于面向对象的程序设计的说法中,不正确的是? A.“对象”是现实世界的实体或概念在计算机逻辑中的抽象表示 B.在面向对象程序设计方法中,其程序结构是一个类的集合和各类之间以继承关系联系起来的结构 C.对象是面向对象技术的核心所在,在面向对象程序设计中,对象是类的抽象 D.面向对象程序设计的关键设计思想是让计算机逻辑来模拟现实世界的物理存在 157、下列那个是char类型的值的范围? A.-27~27-1 B.0~216-1 C.0~216 D.0~28 158、下面哪些是短整型short的取值范围: A.-27 ——27-1 B.0 ——215 C.–215 —— 215-1 D.–231 ——231-1 159、将一个十六进制数赋值给一个long类型的变量,正确的表达式是: A.long number = 345L;B.long number =0345;C.long number =0345L;D.long number = 0x345L.160、下面的哪些赋值语句是错的? A.float f = 11.1; B.double d =5.3E12;C.double d =3.14159;D.double d =3.14D.161.以下哪一项对XML 模式是不可能的? a)我们可以限制元素的出现次数 b)我们可以验证元素的数据类型 c)我们可以检查元素是否是一个整数以及它是否可以被5 整除 d)我们可以指定元素在文档中出现的顺序 162.以下哪一项最适合用于将元素定义为一个复杂数据类型? a) 163.SAX 运行在以下哪一项上? a)树节点接口 b)事件驱动模型 c)三层接口 d)以上都不是 164.以下哪一项耗用内存大? a)SAX b)DOM c)SAX 和DOM d)以上都不是 165.___________ 把一个XML 文档中的信息转换成一棵节点树。a)浏览器 b)XML 解析器 c)样式表 d)a 和b 166、下列哪些不是Java的关键字? A.goto B.null C.FALSE D.native E.const 167.在Java中,下列选项表示字符“a”值的是()。a)'a' b)“a” c)newCharacter(a)d) 00a 168、“公司”与“IBM公司”的关系是? A.继承关系 B.包含关系 中字符表示法)(javaC.关联关系 D.以上都不是 169.在Java中,调用一个对象的wait()方法后,()。(线程同步的方法)a)如果该对象的notify()方法已经被调用,则不会产生任何效果 b) 在另外一个对象调用它的notify()或 notifyAll()方法之前该对象一直被挂起 c)将抛出一个异常 d)该对象的wait()方法与其他对象自动同步 170、java语言在语言的类型上应属于那种类型的语言 A.编译型的语言 B.解释型的语言 C.脚本型的解释语言 D.编译链接型的语言 171.哪里可以找到SAX 解析器? a)Java b)C++ c)C d)以上都是 172.Thread类的()方法能够一个接一个地显示applet帧并在每一帧之间暂停一下。(线程的方法)a)pause()b)sleep()c)stop()d)start()e)run() 173.在J2EE中,在自己定义的JavaBean中,有方法getComment(),返回字符串“hello!”,但是没有comment属性,当调用getComment()方法时会()。(JavaBean的属性)a)抛出异常 b) 返回字符串“hello!” c)什么也没有 d)编译不能通过 174.在J2EE中,下面对JSP指令的描述,正确的是()。(JSP的指令)a) 指令以“<%@”开始,以“%>”结束 b)指令以“<%”开始,以“%>”结束 c)指令以“<”开始,以“>”结束 d)指令以“ <%@ page language=“Java” import=“java.rmi.*,java.util.*”%> 二、多选题(100) 201.下面关于ajax的构成描述正确的是: A.使用XmlHttpRequest对象进行异步数据读取 B.使用Xml进行数据交换 C.使用dom实现动态显示和交互 D.通过一个servlet处理绑定和处理所有数据 202.下面关于servlet工作方式说法正确的是: A.读取客户程序发送来的显式数据(表单数据)B.生成相应的结果 C.每当一个客户请求一个HttpServlet对象,该对象的service()方法就被调用 D.当服务器卸装Servlet时,不管service()方法是否调用完成后,直接调用destroy()方法 203.在Servlet类中,有一个方法init()用来做初始化,下面哪个说法是正确的? A 它在servlet类被实例化的时候调用 B 它在servlet类被classloader加载的时候被调用 C 每个servlet实例的该方法都会被多次调用 D缺省的init()方法设置了Servlet的初始化参数,并用它的ServletConfig对象参数来启动配置 204.关于mvc模式的说法错误的是 A.struts是基于mvc模式的典型实现 B.javaBean+jsp+servlet不是基于mvc模式 C.mvc模式使软件开发中的分工更加明确,协同开发,互不影响 D.MVC 减弱了业务逻辑接口和数据接口之间的耦合,以及让视图层更富于变化 205.mvc模式适用于以下哪些情况 A.单次提交会产生多个基本外观 B.几个页面拥有大量公共的处理过程。C.要为同样的数据提供多个视图的应用程序 D.现了数据层与表示层的分离,特别适用于开发与用户图形界面有关的应用程序 206.关于spring的描述正确的是 A.Spring可以将简单的组件配置、组合成为复杂的应用 B.所有的Spring模块都是在核心容器之上构建的 C.Spring为构建Web应用提供了一个功能全面的MVC框架 D.spring中的事务管理是代理模式 207.关于Spring IoC容器的使用正确的是 A.一个bean的依赖关系是指这个进行操作时所依赖的一种属性。B.依赖注入分为接口注入,设置方法注入两种实现形式 C.由容器控制程序之间的(依赖)关系,而非传统实现中,由程序代码直接操控 D.一个bean至少需要一个id(或者是name)属性和一个class属性(attribute) 208.关于hibernate的说法正确的是 A.Configuration 类负责管理Hibernate 的配置信息。 B.Session 单线程,生命期短促的对象,代表应用程序和持久化层之间的一次对话 C.Hibernate禁止你的程序实例化多个SessionFactory。D.Hibernate的query接口不支持hql语法 209.以下关于SessionFactory的说法哪些正确? A 对于每个数据库事务,应该创建一个SessionFactory对象 B 一个SessionFactory对象对应一个数据库存储源。 C SessionFactory是重量级的对象,不应该随意创建。如果系统中只有一个数据库存储源,只需要创建一个。 D SessionFactory的load()方法用于加载持久化对象 210.在持久化层,对象分为哪些状态? A临时状态 B独立状态 C游离状态 D持久化状态 211.在关于持久化概念描述正确的是? A持久层是在系统逻辑层面上,专注于实现数据持久化的一个相对独立的领域。B持久化的实现过程则大多通过各种关系型数据库来完成的。C持久化就是对数据和程序状态的保持。 DHibernate是目前流行的持久层框架,不可以用在任何JDBC可以使用的场合 212.在关于持久化概念描述正确的是? A 持久化层对象状态有持久化状态,游离状态,独立状态和临时状态 B持久化的实现过程则大多通过各种关系型数据库来完成的。C Hibernate是目前流行的持久层框架,不可以用在任何JDBC可以使用的场合 D持久化就是对数据和程序状态的保持。 .213.关于struts标签库的用法说法正确的是 A struts-bean taglib:包含在访问bean和bean属性时使用的tag,也包含一些消息显示的tag。 B struts-htmltaglib:包含用来生成动态HTML用户界面和窗体的tag。C struts-logic taglib :包含的tag用来管理根据条件生成输出文本,和其它一些用来控制的信息。 D struts-template taglib包含的tag用来定义模板机制。 214、下面关于继承的哪些叙述是正确的。(java面向对象的特征)A.在java中只允许单一继承。 B.在java中一个类只能实现一个接口。 C.在java中一个类不能同时继承一个类和实现一个接口。D.java的单一继承使代码更可靠。 215.Java VM执行的操作包括()。(JAVA VM)a) 加载.class文件 b)将.java文件编译成.class文件 c)管理内存 d) 执行垃圾回收 216.在Java语言中,下面变量命名合法的有()。(变量)a) variable123 b)123variable c)private d)selg_asd 217.在Java语言中,下面关于类的描述错误的是()。(类的继承)a) 一个子类可以有多个超类 b)一个超类可以有多个子类 c) 子类可以使用超类的所有方法 d) 子类一定比超类有更多的成员方法 218.在Java语言中,下面描述正确的是()。(包)a) 如某公有接口被声明在一个源文件中,则接口必须和源文件具有相同的名字 b)如源文件包含import语句,则语句必须是第一个非空行 c) 如源文件包含package语句,则语句必须是第一个非空行,非注释行 d)如源文件包含main(),则语句必须是第一个非空行 219.在J2EE中,对于HttpServlet类的描述,正确的是()。(HttpServlet的定义)a)我们自己编写的Servlet继承了HttpServlet类,一般只需覆盖doPost或者doGet方法,不必覆盖service()方法。因为一个service()方法是空的 b) HttpServlet类扩展了GenericServlet类,实现了GenericServlet类的抽象方法service()c) HttpServlet类有两个service()方法 d) 我们自己编写的Servlet继承了HttpServlet类,一般只需覆盖doPost或者doGet方法,不必覆盖service()方法。因为一个service()方法会调用doPost或者doGet方法 220.在J2EE中,Servlet从实例化到消亡是一个生命周期。下列描述正确的是()。(Servlet的生命周期)a)在典型的Servlet生命周期模型中,每次Web请求就会创建一个Servlet实例,请求结束Servlet就消亡了 b) init()方法是包容器调用的Servlet实例的第一个方法 c)在包容器把请求传送给Servlet之后,和在调用Servlet实例的doGet或者doPost方法之前,包容器不会调用Servlet实例的其它方法 d) 在Servlet实例消亡之前,包容器调用Servlet实例的destroy()方法 227.在J2EE中,对于以下ServletConfig的描述,正确的是()。a) 一旦servlet被实例化后,包容器把一个ServletConfig类型的对象传送给init()方法 b) 可以使用Servlet的getServletConfig()方法返回ServletConfig对象 c) ServletConfig对象的方法getInitParameter(name)返回初始化参数name的值,初始化参数一般定义在web.xml中 d)ServletConfig对象的方法getServletName()方法返回在web.xml中的 228在J2EE中,下列关于JSP的scriptlet的陈述正确的是()。(JSP的scriptlet)a) scriptlet是包含在<%和%>之间的 b)scriptlet可以包含import语句 c)scriptlet不但包含Java代码,还可以包含html代码 d) 整个JSP可以有多个<%和%>对 229.在J2EE中,以下对于在JSP中使用JavaBean的描述,正确的是()。(JavaBean的定义)a)在jsp:useBean标记中,id属性的值必须和bean的类名相同 b)在jsp:useBean标记中,scope属性可有可无,如果没有,默认值为“page” c) 在jsp:useBean标记中,必须给出完全限定的类名。比如mybean在my.mypackage包中,则jsp:useBean标记中的class属性的值为my.mypackage.mybean d)在jsp:useBean标记中,id属性可以不写。但如果没有写id属性,则必须要有class属性 230.下列不是Java的保留字的是()。(保留字)a)if b)then c)float d)until 231在J2EE中,以下关于得到ResultSet对象、PreparedStatement对象、CallableStatement对象的说法,正确的是()。(和数据库操作有关的对象)a) 可以使用Statement对象的executeQuery方法返回ResultSet对象 b)可以使用Connection对象的createStatement方法获得PreparedStatement对象 c) 可以使用Connection对象的prepareCall()方法获得CallableStatement对象 d)可以使用Connection对象的executeQuery方法返回ResultSet对象 232.在J2EE中,对于ResultSet接口中的getInt方法,参数可以是()类型。(ResultSet方法的参数)a)布尔型 b)整型 c)字符串型 d)浮点型 233,在J2EE中,对于简单属性来说,Bean工具是()找出属性的。(JavaBeans的简单属性)a)如果有XX方法,则暗指有一个名为“XX”的属性 b) 如果有一个方法名为isX,则通常暗指“X”是一个布尔属性 c)如果有一个方法名为isNotX,则通常暗指“X”是一个布尔属性 d) 如果有setX和getX方法,则暗指有一个名为“X”的属性 234.在J2EE中有个容器的概念,下面对容器的陈述正确的是()。(容器的概念)a)容器不提供事务服务 b)容器为组件提供运行时的服务 c) 容器还提供安全管理 d) 容器是一种J2EE运行时的组件 235.在J2EE中,基于组件的N层体系结构和传统的二层、三层、N层的不同点是()。 (基于组件的技术)a) 基于组件的N层体系中,单一的中间层应用对象已被能相互交流的若干个组件所代替 b) 传统的两层体系,商业逻辑在所有的客户上都有,因此,在所有的客户上安装和保持一致变得十分重要 c) 三层结构系统使得表达逻辑和商业逻辑被分开 d)在传统的N层体系中,单一的中间层应用对象已被能相互交流的若干个组件所代替 236)在Java语言中,如果你想编写一个多线程的程序,你可以使用的方法是()。(Thread)a)扩展类Thread b)实现接口Runnable c)扩展类Runnable d)实现接口Thread 237)下面描述()是正确的。(高级语言和Java虚拟机)a)Java的源程序必须以“.java”或“.jav”扩展名保存 b)Java VM可以是软件也可以是硬件 c)Java使用解释器执行代码 d)用高级语言编写的代码可以让计算机理解并执行它们 238)在Java中,下列()是合法的声明。(数值型数据类型的初始化)a)floatf=1/3;b)inti=1/3;c)float f=1.01;d)doubled=999d; 239)Error与Exception下列说法正确的是()。(异常处理)a)Error表示系统级的错误 b)Error表示程序不必处理的异常 c)Exception表示需要捕捉的异常 d)Exception表示需要程序进行处理的异常 240)HashMap和Hashtable正确的说法有()。(数组与集合)a)都属于Map接口的类 b)Hashtable 类不是同步的,HashMap类是同步的 c)Hashtable 类不允许 null 键和 null 值 d)HashMap类允许null 键和null 值 241)关于断言assert正确的说法有()。(断言)a)断言是一个包含布尔表达式的语句 b)执行断言语句时假定该表达式为false c)断言可以有两种形式 d)当断言表达式为false的时候,系统报告一个Assertionerror 242)Java中有关“重载”和“重写”的说法正确的是()。(多态性) a)“重写”是父类与子类之间多态性的一种表现 b)“重载”是一个类中多态性的一种表现 c)“重载”的方法是可以改变返回值的类型 d)“重载”的方法不能改变返回值的类型 243)下面关于构造方法的说法正确的是()。(构造方法)a)构造方法不能被继承 b)构造方法不能被重写 c)构造方法不能被重载 d)构造方法可以被重载 244)Struts中的ActionServlet的作用是()。(Struts控制器)a)将用户的请求发送到相应的Action对象 b)仅仅向用户返回信息 c)提供对标记库的关联支持 d)是唯一的一个中心控制器 245)Struts中关于Bean标记描述正确的是()。(Struts标记)a)可用于定义新JavaBean b)可用于访问JavaBean c)可用于访问JavaBean的属性 d)不能复制现有JavaBean 246)Struts中 d)Filter属性如果设置为True,属性中的所有特殊HTML字符都将被转化为相应的实体引用 247)Struts中HTML标记的作用有()。(Struts标记)a)显示表单元素和输入控件 b)显示错误信息 c)处理用户输入数据 d)显示其他HTML元素 248)关于Hibernate描述正确的有()。(Hibernate概念)a)Hibernate是一种开放源代码的对象/关系映射框架技术 b)功能与JDO相似,与CMP不同 c)完全着眼于关系数据库的 OR 映射 d)事务处理,生命周期管理不依赖于J2EE容器 249)Hibernate关联维护中关于“一对一”描述正确的是()。(关联关系)a)一对一的关联维护在项目中大量使用 b)可以采用主键关联 c)可以采用外键关联 d)一般都使用外键关联 250)Hibernate中关于使用查询语句描述正确的是().(实体查询)a)不能再继续使用SQL语句了 b)可以使用符合对象语言的对象查询语句 c)可以使用条件查询语句 d)只能使用HQL语句 251)Hibernate中的查询参数类型有().(查询参数)a)集合类型 b)值类型 c)实体类型 d)类类型 252)在Hibernate 中关于缓存正确的说法有().(Hibernate缓存)a)Hibernate只有一级缓存 b)Hibernate有一级缓存也有二级缓存 c)一级缓存不是必须的 d)二级缓存可以使用Ehcache、Oscache等 253)关于Spring的IoC说法正确的是().(IoC)a)ioc容器通过读取配置文件进行装配 b)IoC把工厂方法和对象生成这两者合并在一起 c)IoC的目的就是提高程序的灵活性和可维护性 d)IoC中最基本的Java技术就是“反射”编程 254)AOP中切入点描述正确的有()(AOP)a)切入点是Spring的入口 b)同一个切入点会触发不同的通知 c)org.springframework.aop.Pointcut接口是中心 d)Spring支持三种切入点的运作:显著,联合和交集。 255.在java中一个类被声明为final类型,表示的意思是()。(Final关键字) a)该类可以被其子类继承 b)该类一定是一个子类 c)该类不能被继承 d)该类是一个顶级类 256.下面哪些接口直接继承于Collection接口()。(集合)a)List b)Map c)Set d)HashTable 257.下面关于继承的哪些叙述是正确的()。(布局管理器)a)在java中只允许单一继承 b)在java中一个类只能实现一个接口 c)在java中一个类不能同时继承一个类和实现一个接口 d)java的单一继承使代码更可靠 258.关于Struts下面描述正确的是()。(Struts概念)a)Struts是采用Java Servlet/JavaServer Pages技术 b)开发Web应用程序的开放源码的framework c)采用Struts能开发出基于MVC设计模式的应用构架 d)Struts采用的是JSP Model1 259.Struts中标记库的描述正确的是()。(Struts控制器)a)Bean标记用来在JSP页中管理bean b)Logic标记用来在JSP页中控制流程 c)HTML标记用来生成HTML标记,在表单中显示数据 d)模板标记使用动态模板构造普通格式的页,使用会话ID对URL进行编程 260.Struts中 d)Name属性定义目标Bean的名称。该属性可有可无 261.Struts中Logic标记库定义的标记能够执行下列哪些功能()。(Struts标记)a)条件逻辑 b)重复 c)国际化处理 d)转发/重定向响应 262.HTML标记描述正确的有()。(Struts标记)a) 263.Hibernate关联维护中关于“一对多/多对一”描述正确的是()。(关联关系) a)可以采用Set来配置、、Bag、b)可以采用List来配置 c)可以采用Map来配置 d)在一对多的情况下一般将一端的inverse设为false 264.Hibernate关联维护中关于“cascade”描述正确的是()。(关联关系)a)cascade的概念和数据库的cascade概念是基本一致 b)cascade的概念和数据库的cascade概念完全不一样 c)当当前对象执行某操作的情况下,其关联的对象也执行cascade设置的同样操作 d)当当前对象执行某操作的情况下,其关联的对象也执行cascade设置的不一样的操作 IBM软件产品实训基地 模拟面试重点题库 1.综合性问题......................................................................................................................................3 1.1 1.2 1.3 1.4 1.5 1.6 1.7 1.8 1.9 1.10 1.11 1.12 1.13 问题1:自我介绍,(一般都是1---2分钟)。.....................................................................3 问题2:你是怎么知道我们招聘这个职位的呢?...............................................................3 问题3:你了解我们公司吗?...............................................................................................3 问题4:你有过想创业吗?为什么不自己创业?...............................................................3 问题5:你对加班有什么看法?...........................................................................................3 问题6:你对薪金待遇和福利有什么要求?.......................................................................3 问题7:你如何规划自己未来的事业?...............................................................................3 问题8:你优点和缺点分别是什么?这些优缺点对的业绩会有什么样的影响?...........4 问题9:“谈谈你的一次成功失败经历”...........................................................................4 问题10:你是否愿意做常规工作....................................................................................4 问题11:你是应届毕业生,缺乏经验,如何能胜任这项工作.....................................5 问题12:出于工作晋升的考虑,你打算继续深造吗?...................................................5 问题13:现在有女(男)朋友吗?如果我们公司1年开分公司,要把你派遣到那边去,你女(男)不同意,你该怎么做?..................................................................................................5 2.技术性问题......................................................................................................................................5 1.14 1.15 1.16 1.17 1.18 1.19 1.20 1.21 1.22 1.23 1.24 1.25 1.26 1.27 1.28 1.29 1.30 问题1: 什么是面向对象?...............................................................................................5 问题2:面向对象的特征:................................................................................................6 问题3:给我一个你最常见到的RUNTIME EXCEPTION:......................................................6 问题4:谈谈FINAL 问题9:ERROR和EXCEPTION 该 字段数据类型分别为VARCHAR2(10),CHAR(10)存储字节长度以及内容有何区别?.....................9 电话 :0573-82585980 地址 :嘉兴市南湖科技创业中心8号楼 网址 :www.xiexiebang.com IBM软件产品实训基地 1.31 1.32 1.33 1.34 1.35 1.36 1.37 1.38 1.39 1.40 1.41 1.42 1.43 1.44 1.45 1.46 1.47 1.48 3.问题1:项目中的周期?................................................................................................10 问题2:每一阶段主要编写的文档有哪些?.................................................................10 问题3:你主要参于了哪些文档的编写工作?可以具体说明吗?.............................10 问题4:你对文档编写工作是如何看待的?.................................................................10 问题1:你了解的软件测试工具有哪些?.....................................................................10 问题2:在一个项目中怎么样组织安排测试人员高效率的完成测试工作,来保证产品问题3:如何控制测试质量和测试进度,测试结束后如何评价这次测试的质量?.11 问题4:怎样做好文档测试?........................................................................................11 问题5:白盒测试有那几种方法?................................................................................11 问题6:什么是软件测试。............................................................................................12 问题7:软件测试分哪两种方法?分别适合什么情况?.............................................12 问题8:一套完整的测试应该由哪些阶段组成?分别阐述一下各个阶段。.............12 问题9:软件测试的类型有那些?分别比较这些不同的测试类型的区别与联系。.13 问题10:为什么要在一个团队中开展软件测试工作...................................................13 问题11:您所熟悉的软件测试类型都有哪些?请试着分别比较这些不同的测试类型问题12:您认为做好测试用例设计工作的关键是什么?...........................................14 问题13:您认为做好测试计划工作的关键是什么?...................................................14 问题14:你的测试职业发展是什么?..........................................................................15 的质量? 11 的区别与联系(如功能测试、性能测试„„)............................................................................13 逻辑性问题....................................................................................................................................15 电话 :0573-82585980 地址 :嘉兴市南湖科技创业中心8号楼 网址 :www.xiexiebang.com IBM软件产品实训基地 1.综合性问题 1.1 问题1:自我介绍,(一般都是1---2分钟)。 思路: 1、这是面试的必考题目。 2、介绍内容要与个人简历相一致。 3、表述方式上尽量口语化。 4、要切中要害,不谈无关、无用的内容。 5、条理要清晰,层次要分明。 6、事先最好以文字的形式写好背熟。 1.2 问题2:你是怎么知道我们招聘这个职位的呢? 1.3 问题3:你了解我们公司吗? 1.4 问题4:你有过想创业吗?为什么不自己创业? 思路:这个问题可以显示你的冲劲,但如果你的回答是“有”的话,千万小心,下一个问题可能就是“那么为什么你不这样做呢?”其实回答这个问题最好的答案就是“我有想过创业,但是目前不会,如果有这样的机会,我愿与贵公司共同发展,以后让我入股。” 1.5 问题5:你对加班有什么看法? 思路:尽量诚实-如果你说了“是”而实际上却不想,通过以前自己的做事态度或才亲身体验来证这个观点。 1.6 问题6:你对薪金待遇和福利有什么要求? 思路:1.按照贵公司的人事制度执行。2.根据当地的工资和消费水平。3.回答具体数额,前提是对公司的薪资有做过了解。 1.7 问题7:你如何规划自己未来的事业? 思 路:测试经验越多,测试能力越高。所以我的职业发展是需要时间累积的,一步步电话 :0573-82585980 地址 :嘉兴市南湖科技创业中心8号楼 网址 :www.xiexiebang.com IBM软件产品实训基地 向着高级测试工程师奔去。而且我也有初步的职业规划,前3年累积测试经验,按如何做好测试工程师的11,12点要求自己,不断的更新自己改正自己,做好测试任务。 1.8 问题8:你优点和缺点分别是什么?这些优缺点对的业绩会有什么样的影响? 思 路:这两个问题的其实并不在于你是否能认真地看待自己的长处,也不在于你是否能正确认识自己的弱点。记住,你的回答不仅是向主考官说明你的优势和劣势,也能在总体上表现你的价值观和对自身价值的看法。如果你能通过简单讲述一个故事来加以说明,那么能给主考官更深刻的印象。但可能的危险就是主考官可能围绕你的故事展开问答,所以事先需要有所准备。 正确回答:我相信我最大的优点是分析能力和洞察力比较强,比如说某某事件中我是怎么处理的,从而获得什么成效。我最大的缺点是,对不积极进取做事情拖拉的人,可能缺乏足够的耐心。我相信我的在某些方面的才能可以帮助企业更快地实现目标,而且有时候,我处理复杂问题的能力和感染力也能影响我的同事。 评论:这个回答做到了“一箭三雕”。首先,它确实表明了求职者的优点。其次,它所表达的缺点实际上很容易被理解为优点。最后,它指出了求职者的优缺点对企业和其他员工的帮助。当然这只是一个举例,每个人可以结合自己情况,适当展开。 1.9 问题9:“谈谈你的一次成功失败经历” 思路: 1、不宜说自己没有失败的经历。 2、不宜把那些明显的成功说成失败。 3、不宜说出严重影响所应聘工作的失败经历。 4、所谈经历的结果应是失败的。 5、宜说明失败之前自己曾信心百倍、尽心尽力。 6、说明仅仅是由于外在客观原因导致失败。 7、失败后自己很快振作起来,以更加饱满的热情面对以后的工作。 8、成功的事情应说自己比较成功而且印象深刻,事情重大。 1.10 问题10:你是否愿意做常规工作 思路:又是一个“诱供”的提问。主试人从以人往痛苦的经历中体会到,新近毕业的大学生不愿意做常规工作,是一些无望成材的员工,直到他们现实生活中的这个事实后才会有改变。你应向对方解释,你理解需要有人做常规工作,在你奉命完成接受这项必要的工作的原因。只要是在正常工作时间之内,你可以这样回答:“行,没问题,企业 就是要产生效电话 :0573-82585980 地址 :嘉兴市南湖科技创业中心8号楼 网址 :www.xiexiebang.com IBM软件产品实训基地 益,因此在正常营业时间必须开门,并且有人值守。” 1.11 问题11:你是应届毕业生,缺乏经验,如何能胜任这项工作 思路:我觉得虽然缺乏经验,但是应届毕业生有较强的可塑性,而且我自己自学能力强,以前在学校里面也有接触过这些内容,这样上手起来非常的快。我也非常注重沟通,团队协作,也较符合贵公司的招聘要求,我愿与贵公司共同发展,相信我能做好这份工作。 1.12 问题12:出于工作晋升的考虑,你打算继续深造吗? 思路:作为一名大学生,我学到了很多知识。如果有合适的机会,我当然会考虑继续深造。但是,我会认真考虑这件事情,我觉得很多人回学校学习是很盲目的。如果我发现自己所做的工作确实有价值,而且也需要获得更多的教育才能在这一领域做得出色,我当然会毫不犹豫地去学习。 1.13 问题13:现在有女(男)朋友吗?如果我们公司1年开分公司,要把你派遣到那边去,你女(男)不同意,你该怎么做? 思路:有,如果公司派我去,说明公司重用我,看得起我,那我会和对方沟通得到她(他)的谅解,也是为了我和她(他)的将来,我相信她(他)可以理解,并且支持我这么做,至于分居两地,我们可以利用休息时间聚聚也未尝不可。 2.技术性问题 A.Java程序员 1.14 问题1: 什么是面向对象? 思路:是当前计算机界关心的重点,它是90年代软件开发方法的主流。面向对象的概念和应用已超越了程序设计和软件开发,扩展到很宽的范围。如数据库系统、交互式界面、应用结构、应用平台、分布式系统、网络管理结构、CAD技术、人电话 :0573-82585980 地址 :嘉兴市南湖科技创业中心8号楼 网址 :www.xiexiebang.com IBM软件产品实训基地 工智能等领域。 1.15 问题2:面向对象的特征: 思路:1.抽象: 抽象就是忽略一个主题中与当前目标无关的那些方面,以便更充分地注意与当 前目标有关的方面。抽象并不打算了解全部问题,而只是选择其中的一部分,暂时不用部分细节。抽象包括两个方面,一是过程抽象,二是数据抽象。2.继承: 继 承是一种联结类的层次模型,并且允许和鼓励类的重用,它提供了一种明确 表述共性的方法。对象的一个新类可以从现有的类中派生,这个过程称为类继 承。新类继 承了原始类的特性,新类称为原始类的派生类(子类),而原始类 称为新类的基类(父类)。派生类可以从它的基类那里继承方法和实例变量,并且类可以修改或增 加新的方法使之更适合特殊的需要。3.封装: 封装是把过程和数据包围起来,对数据的访问只能通过已定义的界面。面向对 象计算始于这个基本概念,即现实世界可以被描绘成一系列完全自治、封装的 对象,这些对象通过一个受保护的接口访问其他对象。4.多态性: 多态性是指允许不同类的对象对同一消息作出响应。多态性包括参数化多态性 和包含多态性。多态性语言具有灵活、抽象、行为共享、代码共享的优势,很 好的解决了应用程序函数同名问题。 1.16 问题3:给我一个你最常见到的runtime exception: 思路:ArithmeticException, ArrayStoreException, BufferOverflowException, BufferUnderflowException, CannotRedoException, CannotUndoException, ClassCastException, CMMException, ConcurrentModificationException, DOMException, EmptyStackException, IllegalArgumentException, IllegalMonitorStateException, IllegalPathStateException, IllegalStateException, ImagingOpException, IndexOutOfBoundsException, MissingResourceException, NegativeArraySizeException, NoSuchElementException, NullPointerException, ProfileDataException, ProviderException, RasterFormatException, SecurityException, SystemException, UndeclaredThrowableException, UnmodifiableSetException, UnsupportedOperationException 电话 :0573-82585980 地址 :嘉兴市南湖科技创业中心8号楼 网址 :www.xiexiebang.com IBM软件产品实训基地 1.17 问题4:谈谈final 思路: final 用于声明属性,方法和类,分别表示属性不可变,方法不可覆盖,类不可继承。 finally是异常处理语句结构的一部分,表示总是执行。 finalize是Object类的一个方法,在垃圾收集器执行的时候会调用被回收对象的此方法,可以覆盖此方法提供垃圾收集时的其他资源回收,例如关闭文件等。 1.18 问题5:&和&&的区别。 思路:&是位运算符,表示按位与运算,&&是逻辑运算符,表示逻辑与(and) 1.19 问题6:GC是什么? 为什么要有GC? 思路:GC是垃圾收集的意思(Gabage Collection),内存处理是编程人员容易出现问题的地方,忘记或者错误的内存回收会导致程序或系统的不稳定甚至崩溃,Java提供的GC功能可以自动监测对象是否超过作用域从而达到自动回收内存的目的,Java语言没有提供释放已分配内存的显示操作方法。 1.20 问题7:Overload和Override的区别。Overloaded的方法是否可以改变返回值的类型? 思路:方法的重写Overriding和重载Overloading是Java多态性的不同表现。重写Overriding是父类与子类之间多态性的一种表现,重载Overloading是一个类中多态性的一种表现。如果在子类中定义某方法与其父类有相同的名称和参数,我们说该方法被重写(Overriding)。子类的对象使用这个方法时,将调用子类中的定义,对它而言,父类中的定义如同被“屏蔽”了。如果在一个类中定义了多个同名的方法,它们或有不同的参数个数或有不同的参数类型,则称为方法的重载(Overloading)。Overloaded的方法是可以改变返回值的类型。 问题8:Set里的元素是不能重复的,那么用什么方法来区分重复与否呢? 是用==还是equals(iks)? 它们有何区别? 思路:Set里的元素是不能重复的,那么用iterator()方法来区分重复与否。equals()是判读两个Set是否相等。 equals()和==方法决定引用值是否指向同一对象equals()在类中被覆盖,为的是当两个分离的电话 :0573-82585980 地址 :嘉兴市南湖科技创业中心8号楼 网址 :www.xiexiebang.com IBM软件产品实训基地 对象的内容和类型相配的话,返回真值。 1.21 问题9:error和exception exception 表示一种设计或实现问题。也就是说,它表示如果程序运行正常,从不会发生的情况。 1.22 问题10:abstract class抽象类和interface接口有什么区别? 思 路:声明方法的存在而不去实现它的类被叫做抽象类(abstract class),它用于要创建一个体现某些基本行为的类,并为该类声明方法,但不能在该类中实现该类的情况。不能创建abstract 类的实例。然而可以创建一个变量,其类型是一个抽象类,并让它指向具体子类的一个实例。不能有抽象构造函数或抽象静态方法。Abstract 类的子类为它们父类中的所有抽象方法提供实现,否则它们也是抽象类为。取而代之,在子类中实现该方法。知道其行为的其它类可以在类中实现这些方法。 接口(interface)是抽象类的变体。在接口中,所有方法都是抽象的。多继承性可通过实现这样的接口而获得。接口中的所有方法都是抽象的,没有一个有程序体。接口只可以定义static final成员变量。接口的实现与子类相似,除了该实现类不能从接口定义中继承行为。当类实现特殊接口时,它定义(即将程序体给予)所有这种接口的方法。然后,它可以在实现了该接口的类的任何对象上调用接口的方法。由于有抽象类,它允许使用接口名作为引用变量的类型。通常的动态联编将生效。引用可以转换到接口类型或从接口类型转换,instanceof 运算符可以用来决定某对象的类是否实现了接口。 1.23 问题11:接口是否可继承接口? 抽象类是否可实现(implements)接口? 抽象类是否可继承实体类(concrete class)? 思 路:接口可以继承接口。抽象类可以实现(implements)接口,抽象类是否可继承实体类,但前提是实体类必须有明确的构造函数。 B.数据库管理员 电话 :0573-82585980 地址 :嘉兴市南湖科技创业中心8号楼 网址 :www.xiexiebang.com IBM软件产品实训基地 1.24 问题1:解释冷备份和热备份的不同点以及各自的优点 思 路:热备份针对归档模式的数据库,在数据库仍旧处于工作状态时进行备份。而冷备份指在数据库关闭后,进行备份,适用于所有模式的数据库。热备份的优点在于当备份时,数据库仍旧可以被使用并且可以将数据库恢复到任意一个时间点。冷备份的优点在于它的备份和恢复操作相当简单,并且由于冷备份的数据库可以工作在非归档模式下,数据库性能会比归档模式稍好。(因为不必将archive log写入硬盘)1.25 问题2:ORACLE是如何检查表结构? 思 路:DESCRIBE命令包 dsc 1.26 问题3:varchar2,char两种数据类型有什么区别,如果库表某字段输入“ABC”后储存,该 字段数据类型分别为varchar2(10),char(10)存储字节长度以及内容有何区别? 思 路:CHAR的长度是固定的,VARCHAR2的长度是可以变化的,存储字符串“ABC“,对于CHAR(10),表示你存储的字符将占10个字节(包括7个空字符),而同样的VARCHAR2(10)则只占用3个字节的长度,10只是最大值,当你存储的字符小于10时,按实际长度存储.VARCHAR2比CHAR节省空间,在效率上比CHAR会稍微差一些 1.27 问题4:给出两种相关约束? 思 路:主键和外键,(NOT NULL非空,UNIQUE唯一,PRIMARY KEY主键,FOREIGN KEY外键以及CHECK等5种类型) 1.28 问题5:创建用户时,需要赋予新用户什么权限才能使它联上数据库。 思 路:CONNECT 电话 :0573-82585980 地址 :嘉兴市南湖科技创业中心8号楼 网址 :www.xiexiebang.com IBM软件产品实训基地 1.29 问题6:如何重构索引? 思 路:ALTER INDEX REBUILD;1.30 问题7:ORACLE中的大对象有哪些? 思 路:BLOB:二进制lob类型,用于存储二进制数据。无法在sqlplus中显示。CLOB:字符lob类型,用于存储字符数据。 BFILE:二进制file类型,用于存储文件指针,这些文件位于文件系统中。无法在sqlplus中显示。 C.文档工程师 1.31 问题1:项目中的周期? 思 路:立项与计划,需求分析,详细设计,编码实施,测试维护 1.32 问题2:每一阶段主要编写的文档有哪些? 思 路:计划包括:项目开发计划、测试计划和配置管理计划,以及JAVA编码规范说明书。 需求包括:关键抽取,用例规约,域模型设计和数据字典 详细设计包括:鲁棒分析,解决方案说明书,数据库设计说明书,测试用例 1.33 问题3:你主要参于了哪些文档的编写工作?可以具体说明吗? 1.34 问题4:你对文档编写工作是如何看待的? D.软件测试工程师 1.35 问题1:你了解的软件测试工具有哪些? 思 路:软件测试工具分两种: 电话 :0573-82585980 地址 :嘉兴市南湖科技创业中心8号楼 网址 :www.xiexiebang.com IBM软件产品实训基地 自动化测试工具,其中有Web的,应用软件的,还有单元测试的.以上具有代表性常用的软件是:Selenium, Winrunner, Loadrunner, Junit等等 软件测试管理工具。代表性常用软件有:Testdirector,ClearQuest和 bugzilla 等。 1.36 问题2:在一个项目中怎么样组织安排测试人员高效率的完成测试工作,来保证产品的质量? 思 路:我认为需要在测试前需要先写好测试计划,其中最重要的是本次测试使用的测试方法、使用的测试工具、测试环境。人员方面需要进行人员及进度的安排,每个测试阶段后的输出工件,还要有风险评估。在测试前将这些准备工作做到位,这样在测试的时候就会比较有条理。 1.37 问题3:如何控制测试质量和测试进度,测试结束后如何评价这次测试的质量? 思 路:控制测试质量,我认为最好是做好测试用例的设计,这样可以对测试的覆盖率进行控制。 补充:如果时间充裕的话可以在设计用例后对其进行评审,这样可以提高测试质量。不过这个在实际的工作当中一般实现不了。。 1.38 问题4:怎样做好文档测试? 思 路:文档测试要注意一下几点:文档的读者群、文档的术语、文档的正确性、文档的完整性、文档的一致性、文档的易用性、样例与示例、文档的语言 1.39 问题5:白盒测试有那几种方法? 思 路:白盒测试方法分为:静态测试和动态测试 静态测试方法:①编码标准与准则 ②走查 ③审查 ④评审 动态测试方法:①语句覆盖 ②判定覆盖 ③条件覆盖 ④判定-条件覆盖 ⑤条件组合覆盖 ⑥路径覆盖 ⑦条件组合+路径覆盖 电话 :0573-82585980 地址 :嘉兴市南湖科技创业中心8号楼 网址 :www.xiexiebang.com IBM软件产品实训基地 1.40 问题6:什么是软件测试。 思 路:通过人工或自动化手段对系统进行测试,目的是为了验证系统是否满足预定功能或者是为了弄清楚实际结果与预期结果之间的差别。 1.41 问题7:软件测试分哪两种方法?分别适合什么情况? 思 路:软件测试方法一般分为两种:白盒测试与黑盒测试。白盒测试又称为结构测试、逻辑驱动测试或基于程序本身的测试,它着重于程序的内部结构及算法,通常不关心功能与性能指标;黑盒测试又被称为功能测试、数据驱动测试或基于规格说明的测试,它实际上是站在最终用户的立场,检验输入输出信息及系统性能指标是否符合规格说明书中有关功能需求及性能需求的规定。 1.42 问题8:一套完整的测试应该由哪些阶段组成?分别阐述一下各个阶段。 思 路:计划阶段、设计阶段、白盒单元、白盒集成、黑盒单元、黑盒集成、系统测试、回归测试、验收测试一套完整的测试应该由五个阶段组成:1)。测试计划首先,根据用户需求报告中关于功能要求和性能指标的规格说明书,定义相应的测试需求报告,即制订黑盒测试的最高标准。以后所有的测试工作都将围绕着测试需求来进行,符合测试需求的应用程序即是合格的,反之即是不合格的;同时,还要适当选择测试内容,合理安排测试人员、测试时间及测试资源等。 2)测试设计将测试计划阶段制订的测试需求分解、细化为若干个可执行的测试过程,并为每个测试过程选择适当的测试用例(测试用例选择的好坏将直接影响测试结果的有效性)。 3)测试开发建立可重复使用的自动测试过程。 4)测试执行执行测试开发阶段建立的自动测试过程,并对所发现的缺陷进行跟踪管理,测试执行一般由单元测试、组合测试、集成测试、系统联调及回归测试等步骤组成,测试人员应本着科学负责的态度,一步一个脚印地进行测试。 5)测试评估结合量化的测试覆盖域及缺陷跟踪报告,对于应用软件的质量和开发团队的工作进度及工作效率进行综合评价。 电话 :0573-82585980 地址 :嘉兴市南湖科技创业中心8号楼 网址 :www.xiexiebang.com IBM软件产品实训基地 1.43 问题9:软件测试的类型有那些?分别比较这些不同的测试类型的区别与联系。 思 路: BVT(Build Verification Test),主要目的是验证最新生成的软件版本在功能上是否完整,主要的软件特性是否正确Scenario Tests(基于用户实际应用场景的测试),Scenario Tests优点是关注了用户的需求,缺点是有时候难以真正模仿用户真实的使用情况Smoke Test,修复Bug后,针对此次修复是否会对其他模块造成影响而进行的专门测试。Smoke Test优点是节省测试时间,防止build失败。缺点是覆盖率还是比较低此外,还有Application Compatibility Test(兼容性测试),主要目的是为了兼容第三方软件,确保第三方软件能正常运行,用户不受影响。Accessibility Test(软件适用性测试),是确保软件对于某些有残疾的人士也能正常的使用,但优先级比较低。其它的测试还有Functional Test(功能测试)、Security Test(安全性测试)、Stress Test(压力测试)、Performance Test(性能测试)、Regression Test(回归测试)、Setup/Upgrade Test(安装升级测试)等 1.44 问题10:为什么要在一个团队中开展软件测试工作 思 路:因为没有经过测试的软件很难在发布之前知道该软件的质量,就好比ISO质量认证一样,测试同样也需要质量的保证,这个时候就需要在团队中开展软件测试的工作。在测试的过程发现软件中存在的问题,及时让开发人员得知并修改问题,在即将发布时,从测试报告中得出软件的质量情况。 1.45 问题11:您所熟悉的软件测试类型都有哪些?请试着分别比较这些不同的测试类型的区别与联系(如功能测试、性能测试„„) 思 路:测试类型有:功能测试,性能测试,界面测试。 功能测试在测试工作中占的比例最大,功能测试也叫黑盒测试。是把测试对象看作一个黑盒子。利用黑盒测试法进行动态测试时,需要测试软件产品的功能,不需测试软件产品的内部结构和处理过程。采用黑盒技术设计测试用例的方法有:等价类划分、边界值分析、错误推测、因果图和综合策略。 电话 :0573-82585980 地址 :嘉兴市南湖科技创业中心8号楼 网址 :www.xiexiebang.com IBM软件产品实训基地 性能测试是通过自动化的测试工具模拟多种正常、峰值以及异常负载条件来对系统的各项性能指标进行测试。负载测试和压力测试都属于性能测试,两者可以结合进行。通过负载测试,确定在各种工作负载下系统的性能,目标是测试当负载逐渐增加时,系统各项性能指标的变化情况。压力测试是通过确定一个系统的瓶颈或者不能接收的性能点,来获得系统能提供的最大服务级别的测试。 界面测试,界面是软件与用户交互的最直接的层,界面的好坏决定用户对软件的第一印象。而且设计良好的界面能够引导用户自己完成相应的操作,起到向导的作用。同时界面如同人的面孔,具有吸引用户的直接优势。设计合理的界面能给用户带来轻松愉悦的感受和成功的感觉,相反由于界面设计的失败,让用户有挫败感,再实用强大的功能都可能在用户的畏惧与放弃中付诸东流。 区别在于,功能测试关注产品的所有功能上,要考虑到每个细节功能,每个可能存在的功能问题。性能测试主要关注于产品整体的多用户并发下的稳定性和健壮性。界面测试更关注于用户体验上,用户使用该产品的时候是否易用,是否易懂,是否规范(快捷键之类的),是否美观(能否吸引用户的注意力),是否安全(尽量在前台避免用户无意输入无效的数据,当然考虑到体验性,不能太粗鲁的弹出警告)?做某个性能测试的时候,首先它可能是个功能点,首先要保证它的功能是没问题的,然后再考虑该功能点的性能测试 1.46 问题12:您认为做好测试用例设计工作的关键是什么? 思 路:白盒测试用例设计的关键是以较少的用例覆盖尽可能多的内部程序逻辑结果 黑盒法用例设计的关键同样也是以较少的用例覆盖模块输出和输入接口。不可能做到完全测试,以最少的用例在合理的时间内发现最多的问题 1.47 问题13:您认为做好测试计划工作的关键是什么? 思 路: 1.明确测试的目标,增强测试计划的实用性 编写软件测试计划得重要目的就是使测试过程能够发现更多的软件缺陷,因此软件测试计划的价值取决于它对帮助管理测试项目,并且找出软件潜在的缺陷。因此,软件测试计划中的测试范围必须高度覆盖功能需求,测试方法必须切实可行,测试工具并且具有较高的实用性,便于使用,生成的测试结果直观、准确 2.坚持“5W”规则,明确内容与过程 电话 :0573-82585980 地址 :嘉兴市南湖科技创业中心8号楼 网址 :www.xiexiebang.com IBM软件产品实训基地 1.48 问题14:你的测试职业发展是什么? 思 路:测试经验越多,测试能力越高。所以我的职业发展是需要时间累积的,一步步向着高级测试工程师奔去。而且我也有初步的职业规划,前3年累积测试经验,按如何做好测试工程师的11,12点要求自己,不断的更新自己改正自己,做好测试任务。 3.逻辑性问题 1.你让工人为你工作7天,给工人的回报是一根金条。金条平分成相连的7段,你必须在每天结束时给他们一段金条,如果只许你两次把金条弄断,你如何给你的工人付费? 2.请把一盒蛋糕切成8份,分给8个人,但蛋糕盒里还必须留有一份。 3.小明一家过一座桥,过桥时是黑夜,所以必须有灯。现在小明过桥要1秒,小明的弟弟要3秒,小明的爸爸要6秒,小明的妈妈要8秒,小明的爷爷要12秒。每次此桥最多可过两人,而过桥的速度依过桥最慢者而定,而且灯在点燃后30秒就会 熄灭。问:小明一家如何过桥? 4.一群人开舞会,每人头上都戴着一顶帽子。帽子只有黑白两种,黑的至少 有一顶。每个人都能看到其他人帽子的颜色,却看不到自己的。主持人先让大家看 看别人头上戴的是什么帽子,然后关灯,如果有人认为自己戴的是黑帽子,就打自 己一个耳光。第一次关灯,没有声音。于是再开灯,大家再看一遍,关灯时仍然鸦 雀无声。一直到第三次关灯,才有劈劈啪啪打耳光的声音响起。问有多少人戴着黑 帽子? 5.请估算一下CN TOWER电视塔的质量。 6.一楼到十楼的每层电梯门口都放着一颗钻石,钻石大小不一。你乘坐电梯 从一楼到十楼,每层楼电梯门都会打开一次,只能拿一次钻石,问怎样才能拿到最大的一颗? 7.U2合唱团在17分钟内得赶到演唱会场,途中必需跨过一座桥,四个人从桥 的同一端出发,你得帮助他们到达另一端,天色很暗,而他们只有一只手电筒。一次同时最多可以有两人一起过桥,而过桥的时候必须持有手电筒,所以就得有人把 手电筒带来带去,来回桥两端。手电筒是不能用丢的方式来传递的。四个人的步行 速度各不同,若两人同行则以较慢者的速度为准。Bono需花1分钟过桥,Edge需花 2分钟过桥,Adam需花5分钟过桥,Larry需花10分钟过桥。他们要如何在17分钟内 过桥呢? bono和edge过河(2)bono一个人回来(1)larry和adam过河(10)edge一个人回来(2)edge和bono过河(2)2+1+10+2+2=17 电话 :0573-82585980 地址 :嘉兴市南湖科技创业中心8号楼 网址 :www.xiexiebang.com IBM软件产品实训基地 8.9.10.11.烧一根不均匀的绳要用一个小时,如何用它来判断半个小时 ? 为什么下水道的盖子是圆的? 字串6 美国有多少辆加油站(汽车)? 有7克、2克砝码各一个,天平一只,如何只用这些物品三次将140克的盐 分成50、90克各一份? 第一步:把140克盐分成两等份,每份70克。 第二步:把天平一边放上2+7克砝码,另一边放盐,这样就得到9克和61克分开的盐。 第三步:将9克盐和2克砝码放在天平一边,另一边放盐,这样就得到11克和50克。于是50和90就分开了。 12.有一辆火车以每小时15公里的速度离开洛杉矶直奔纽约,另一辆火车以第小时20公里的速度从纽约开往洛杉矶。如果有一只鸟,以外30公里每小时的速度和 两辆火车现时启动,从洛杉矶出发,碰到另辆车后返回,依次在两辆火车来回的飞行,直道两面辆火车相遇,请问,这只小鸟飞行了多长距离? 13.你有两个罐子,50个红色弹球,50个蓝色弹球,随机选出一个罐子,随机 选取出一个弹球放入罐子,怎么给红色弹球最大的选中机会?在你的计划中,得到 红球的准确几率是多少? 14.想象你在镜子前,请问,为什么镜子中的影像可以颠倒左右,却不能颠倒 上下? 15.你有四人装药丸的罐子,每个药丸都有一定的重量,被污染的药丸是没被 污染的重量+1.只称量一次,如何判断哪个罐子的药被污染了? 16.如果你有无穷多的水,一个3夸脱的和一个5夸脱的提桶,你如何准确称出 4夸脱的水? 17.你有一桶果冻,其中有黄色,绿色,红色三种,闭上眼睛选出同样颜色 的两个,抓取同种颜色的两个。抓取多少个就可以确定你肯定有两个同一颜色的果冻?4 18.将汽车钥匙插入车门,向哪个方向旋转就可以打开车锁? 19.如果要你能去掉50个州的任何一个,那你去掉哪一个,为什么? 20.对一批编号为1~100 全部开关朝上开的灯进行以下操作 凡是1 的倍数反方向拨一次开关2 的倍数反方向又拨一次开关3 的倍数反方向 又拨一次开关。 问最后为关熄状态的灯的编号。 1-100内的全部质数(1-5-7-11-13-17-19-23-25-29-31-35-37-41-43-47-49-53-55-59-61-65-67-71-73-77-79-83-85-89-91-95-97) 第一次操作后灯全关熄。第二次后偶数2N开,奇数2N-1关。第三次操作。在偶数中,是6的倍数的又被拨动关熄。在奇数中,不是3的倍数的未再动,仍关熄着。太多不列举。 21.假设一张圆盘像唱机上的唱盘那样转动。这张盘一半是黑色,一半是白色。假设你有电话 :0573-82585980 地址 :嘉兴市南湖科技创业中心8号楼 网址 :www.xiexiebang.com IBM软件产品实训基地 数量不限的一些颜色传感器。要想确定圆盘转动的方向,你需要在它周围摆多少个颜色传感器?它们应该被摆放在什么位置? 22.假设时钟到了12点。注意时针和分针重叠在一起。在一天之中,时针和分针共重叠多少次?你知道它们重叠时的具体时间吗? 那么24小时内就有22次重叠,答案就是22次。除非你的计算要细如发丝,还要把半夜12点一天结束与一天开始的那一次重叠计算进来,就是23次。 电话 :0573-82585980 地址 :嘉兴市南湖科技创业中心8号楼 网址 :www.xiexiebang.com 比列: 00:00 01:05(5/11)02:10(10/11)03:16(4/11)04:21(9/11)05:27(3/11)06:32(8/11)07:38(2/11)08:43(7/11)09:49(1/11)10:54(6/11)12:00 13:05(5/11)14:10(10/11)15:16(4/11)16:21(9/11)17:27(3/11)18:32(8/11)19:38(2/11)20:43(7/11)21:49(1/11)22:54(6/11) IBM软件产品实训基地 23.24.25.26.27.28.29.30.31.中间只隔一个数字的两个奇数被称为奇数对,比如17和19。证明奇数对之 间的数字总能被6整除(假设这两个奇数都大于6)。现在证明没有由三个奇数组成 的奇数对。一个屋子有一个门(门是关闭的)和3盏电灯。屋外有3个开关,分别与这 3盏灯相连。你可以随意操纵这些开关,可一旦你将门打开,就不能变换开关了。确定每个开关具体管哪盏灯。 假设你有8个球,其中一个略微重一些,但是找出这个球的惟一方法是将两个球放在天平上对比。最少要称多少次才能找出这个较重的球? 字串7 下面玩一个拆字游戏,所有字母的顺序都被打乱。你要判断这个字是什么。假设这个被拆开的字由5个字母组成: 1.共有多少种可能的组合方式? 2.如果我们知道是哪5个字母,那会怎么样? 3.找出一种解决这个问题的方法。 有4个女人要过一座桥。她们都站在桥的某一边,要让她们在17分钟内全 部通过这座桥。这时是晚上。她们只有一个手电筒。最多只能让两个人同时过桥。不管是谁过桥,不管是一个人还是两个人,必须要带着手电筒。手电筒必须要传来传去,不能扔过去。每个女人过桥的速度不同,两个人的速度必须以较慢的那个人 的速度过桥。 第一个女人:过桥需要1分钟; 第二个女人:过桥需要2分钟; 第三个女人:过桥需要5分钟; 第四个女人:过桥需要10分钟。 比如,如果第一个女人与第4个女人首先过桥,等她们过去时,已经过去了10 分钟。如果让第4个女人将手电筒送回去,那么等她到达桥的另一端时,总共用去了20分钟,行动也就失败了。怎样让这4个女人在17分钟内过桥?还有别的什么方 法? 如果你有两个桶,一个装的是红色的颜料,另一个装的是蓝色的颜料。你 从蓝色颜料桶里舀一杯,倒入红色颜料桶,再从红色颜料桶里舀一杯倒入蓝颜料桶。两个桶中红蓝颜料的比例哪个更高?通过算术的方式来证明这一点。字串8 B:疯狂计算 已知两个1~30之间的数字,甲知道两数之和,乙知道两数之积。 甲问乙:”你知道是哪两个数吗?“乙说:”不知道“; 乙问甲:”你知道是哪两个数吗?“甲说:”也不知道“; 于是,乙说:”那我知道了“; 随后甲也说:”那我也知道了"; 这两个数是什么? 4,4,10,10,加减乘除,怎么出24点? 1000!有几位数,为什么? 32.F(n)=1 n>8 n<12 F(n)=2 n<2 F(n)=3 n=6 F(n)=4 n=other 使用+* /和sign(n)函数组合出F(n)函数 字串9 sign(n)=0 n=0 sign(n)=-1 n<0 :sign(n)=1 n>0 解:只要注意[sign(n-m)*sign(m-n)+1]在n=m 处取1 其他点取0 就可以了 34、米字形的画就行了 电话 :0573-82585980 地址 :嘉兴市南湖科技创业中心8号楼 网址 :www.xiexiebang.com 一、你对MVC的理解,MVC有什么优缺点?结合Struts,说明在一个Web应用如何去使用? 答: MVC设计模式(应用观察者模式的框架模式)M: Model(Business process layer),模型,操作数据的业务处理层,并独立于表现层(Independent of presentation)。 V: View(Presentation layer),视图,通过客户端数据类型显示数据,并回显模型层的执行结果。C: Controller(Control layer),控制器,也就是视图层和模型层桥梁,控制数据的流向,接受视图层发出的事件,并重绘视图 MVC框架的一种实现模型 模型二(Servlet-centric): JSP+Servlet+JavaBean,以控制为核心,JSP只负责显示和收集数据,Sevlet,连接视图和模型,将视图层数据,发送给模型层,JavaBean,分为业务类和数据实体,业务类处理业务数据,数据实体,承载数据,基本上大多数的项目都是使用这种MVC的实现模式。 StrutsMVC框架(Web application frameworks) Struts是使用MVC的实现模式二来实现的,也就是以控制器为核心。 Struts提供了一些组件使用MVC开发应用程序: Model:Struts没有提供model类。这个商业逻辑必须由Web应用程序的开发者以JavaBean或EJB的形式提供 View:Struts提供了action form创建form bean, 用于在controller和view间传输数据。此外,Struts提供了自定义JSP标签库,辅助开发者用JSP创建交互式的以表单为基础的应用程序,应用程序资源文件保留了一些文本常量和错误消息,可转变为其它语言,可用于JSP中。 Controller:Struts提供了一个核心的控制器ActionServlet,通过这个核心的控制器来调用其他用户注册了的自定义的控制器Action,自定义Action需要符合Struts的自定义Action规范,还需要在struts-config.xml的特定配置文件中进行配置,接收JSP输入字段形成Action form,然后调用一个Action控制器。Action控制器中提供了model的逻辑接口。 二、什么是WebService? 答: WebService是一个SOA(面向服务的编程)的架构,它是不依赖于语言,不依赖于平台,可以实现不同的语言间的相互调用,通过Internet进行基于Http协议的网络应用间的交互。 WebService实现不同语言间的调用,是依托于一个标准,webservice是需要遵守WSDL(web服务定义语言)/SOAP(简单请求协议)规范的。WebService=WSDL+SOAP+UDDI(webservice的注册) Soap是由Soap的part和0个或多个附件组成,一般只有part,在part中有Envelope和Body。 Web Service是通过提供标准的协议和接口,可以让不同的程序集成的一种SOA架构。 Web Service的优点 (1)可以让异构的程序相互访问(跨平台) (2)松耦合 (3)基于标准协议(通用语言,允许其他程序访问)Web Service的基本原理 (1)Service Provider采用WSDL描述服务 (2)Service Provider 采用UDDI将服务的描述文件发布到UDDI服务器(Register server) (3)Service Requestor在UDDI服务器上查询并 获取WSDL文件 (4)Service requestor将请求绑定到SOAP,并访问相应的服务。 三、什么是中间件? 中间件就是程序中可织入的,可重用的,与业务逻辑无关的各种组件。 中间件(middleware)是基础软件的一大类,属于可复用软件的范畴。顾名思义,中间件处于操作系统软件与用户的应用软件的中间。中间件在操作系统、网络和数据库之上,应用软件的下层,总的作用是为处于自己上层的应用软件提供运行与开发的环境,帮助用户灵活、高效地开发和集成复杂的应用软件。 在众多关于中间件的定义中,比较普遍被接受的是IDC表述的:中间件是一种独立的系统软件或服务程序,分布式应用软件借助这种软件在不同的技术之间共享资源,中间件位于客户机服务器的操作系统之上,管理计算资源和网络通信。 分类:数据访问中间件,远程调用中间件,消息中间件,交易中间件,对象中间件。举例: 1,RMI(Remote Method Invocations, 远程调用) 2,Load Balancing(负载均衡,将访问负荷分散到各个服务器中)3,Transparent Fail-over(透明的故障切换)4,Clustering(集群,用多个小的服务器代替大型机) 5,Back-end-Integration(后端集成,用现有的、新开发的系统如何去集成遗留的系统)6,Transaction事务(全局/局部)全局事务(分布式事务)局部事务(在同一数据库联接内的事务) 7,Dynamic Redeployment(动态重新部署,在不停止原系统的情况下,部署新的系统)8,System Management(系统管理)9,Threading(多线程处理)10,Message-oriented Middleware面向消息的中间件(异步的调用编程)11,Component Life Cycle(组件的生命周期管理)12,Resource pooling(资源池)13,Security(安全)14,Caching(缓存) 四、什么是典型的软件三层结构?软件设计为什么要分层?软件分层有什么好处? 答:(1)Presentation layer(表示层) (1)表示逻辑(生成界面代码) (2)接收请求 (3)处理业务层抛出的异常 (4)负责规则验证(数据格式,数据非空等) (5)流程控制 (2)Service layer(服务层/业务层) (1)封装业务逻辑处理,并且对外暴露接口 (2)负责事务,安全等服务(3)Persistence layer(持久层) (1)封装数据访问的逻辑,暴露接口 (2)提供方便的数据访问的方案(查询语言,API,映射机制等)Domain layer(域层) (1)业务对象以及业务关系的表示 (2)处理简单的业务逻辑 (3)域层的对象可以穿越表示层,业务层,持久层 软件分层结构使得代码维护非常方便,设计明确,各层独立,专注自己擅长的领域。 五、什么是OOP?OOP相对于面向过程编程有哪些优点? OOP,Object-Oriented Programming,面向对象编程不同于面向过程编程: (1)OOP关注对象和角色,也就是事物的本质 1)OOP把客观世界中的对象抽象成对应的类; 2)通过类构造实例; 3)通过依赖、继承、实现等形式建立对象间的通信关系 (2)OOP易于扩展,增加或改变业务的功能,无需大幅改动改变源代码 (3)OOP易于建模,OOP就是软件架构师在计算机高级语言中对客观世界的抽象和再现,人们可以很好地理解和建立起计算机中的抽象模型 六、谈谈Overload和Override的区别。 答: 方法的重写Overriding和重载Overloading是Java多态性的不同表现。重写Overriding是父类与子类之间多态性的一种表现,重载Overloading是一个类中多态性的一种表现。如果在子类中定义某方法与其父类有相同的名称和参数,我们说该方法被重写(Overriding)。子类的对象使用这个方法时,将调用子类中的定义,对它而言,父类中的定义如同被“屏蔽”了。如果在一个类中定义了多个同名的方法,它们或有不同的参数个数或有不同的参数类型,则称为方法的重载(Overloading)。Overloaded的方法是可以改变返回值的类型。 七、谈谈HashMap和Hashtable的区别。 答: HashMap是轻量级的(线程不安全的,效率高的)集合,Hashtable是重量级的(线程安全的,效率低的)集合。 都属于Map接口的类,实现了将惟一键映射到特定的值上。 HashMap 类没有分类或者排序。它允许一个 null 键和多个 null 值。 Hashtable 类似于 HashMap,但是不允许 null 键和 null 值。它也比 HashMap 慢,因为它是同步的。 八、请问abstract class和interface有什么区别? 答: 1)接口没有任何的实现,而抽象类它可以有部分的实现也可以没有; 2)如果需要复用或者共享部分代码,应该用抽象类而不是接口; 3)继承无法解决类型的转换问题,接口就是为了解决这一问题而产生的(Java的单继 承是接口产生的根本原因)接口是一种抽象的 DML [Data Manipulation Language, 数据操作语言] WYSIWYG 所见即所得 [What You See is What You Get] CMP CMT B2B C2C B2C IDE DOM Client/Server CMM ORM MIS MVC MVC是Model-View-Controller的简写。“Model” 代表的是应用的业务逻辑(通过JavaBean,EJB组件实现),“View” 是应用的表示面(由JSP页面产生),“Controller” 是提供应用的处理过程控制(一般是一个Servlet),通过这种设计模型把应用逻辑,处理过程 和显示逻辑分成不同的组件实现。这些组件可以进行交互和重用。OLE CORBA CORBA 标准是公共对象请求代理结构(Common Object Request Broker Architecture),由对象管理组织(Object Management Group,缩写为 OMG)标准化。它的组成是接口定义语言(IDL), 语言绑定(binding:也译为联编)和允许应用程序间互操作的协议。其目的为: 用不同的程序设计语言书写 在不同的进程中运行 为不同的操作系统开发。UML UML,标准建模语言,包含用例图,静态图(包括类图、对象图和包图),行为图,交互图(顺序图,合作图),实现图等。XML CMMI JRE J2EE J2EE是Sun公司提出的多层(multi-diered),分布式(distributed),基于组件(component-base)的企业级应用 模型(enterpriese application model).在这样的一个应用系统中,可按照功能划分为不同的组件,这些组件又可在不同计算机上,并且处于相应的层次(tier)中。所属层次包括客户层(clietn tier)组件,web层和组件,Business层和组件,企业信息系统(EIS)层。JDK AOP OO Container W3C JMS Domain POJO JVM JNDI JTA SOAP [Simple Object Access Protocol,简单对象访问协议] WSDL JDO JDO是Java对象持久化的新的规范,为Java Data Object的简称,也是一个用于存取某种数据仓库中的对 象的标准化API。JDO提供了透明的对象存储,因此对开发人员来说,存储数据对象完全不需要额外的代码(如JDBC API的使用)。这些繁琐的例行工作已经转移到JDO产品提供商身上,使开发人员解脱出来,从而集中时间和精力在业务逻辑上。另外,JDO很灵活,因为它可以在任何数据底层上运行。JDBC只是面向关系数据库(RDBMS)JDO更通用,提供到任何数据底层的存储功能,比如关系数据库、文件、XML以及对象数据库(ODBMS)等等,使得应用可移植性更强。TDD DAO IoC [Inversion of Control, 控制反转] RMI DNS [Internet Domain Name System, 因特网域名系统] URL URI 二十四、数据库连接池的工作机制 二 十五、互联网提供哪些服务? 二 十六、请写出JSP的几个隐含内置对象 答:JSP中隐含内置对象 名称 类型 注释和范围 request javax.servlet.http.HttpServletRequest request response javax.servlet.http.HttpServletResponse response page javax.lang.Object page Exception java.lang.Throwable page pageContext javax.servlet.jsp.PageContext page session javax.servlet.http.HttpSession session application javax.servlet.ServletContext ServletContext out javax.servlet.jsp.JspWriter OutputStream config javax.servlet.ServletConfig ServletConfig JSP共有以下9种基本内置组件(可与ASP的6种内部组件相对应): request 用户端请求,此请求会包含来自GET/POST请求的参数 response 网页传回用户端的回应 page JSP 网页本身 exception 针对错误网页,未捕捉的例外 pageContext 网页的属性是在这里管理 session 与请求有关的会话期 application servlet 正在执行的内容 out 用来传送回应的输出 config Servlet的构架部件 二十七、请你谈谈SSH整合 答:SSH: Struts(表示层)+Spring(业务层)+Hibernate(持久层) Struts: Struts是一个表示层框架,主要作用是界面展示,接收请求,分发请求。 在MVC框架中,Struts属于VC层次,负责界面表现,负责MVC关系的分发。(View:沿用JSP,HTTP,Form,Tag,Resourse ;Controller:ActionServlet,struts-config.xml,Action) Hibernate: Hibernate是一个持久层框架,它只负责与关系数据库的操作。 Spring: Spring是一个业务层框架,是一个整合的框架,能够很好地黏合表示层与持久层。 二十八、应用服务器与Web Server的区别 二十九、Java Servlet API中forward()与redirect()的区别 答: 前者仅是容器中控制权的转向,在客户端浏览器地址栏中不会显示出转向后的地址;后者则是完全的跳转,浏览器将会得到跳转的地址,并重新发送请求链接。这样,从浏览器的地址栏中可以看到跳转后的链接地址。所以,前者更加高效,在前者可以满足需要时,尽量使用forward()方法,并且,这样也有助于隐藏实际的链接。在有些情况下,比如,需要跳转到一个其它服务器上的资源,则必须使用sendRedirect()方法。 三 十、写一个简单的C/S结构程序,Java 的通信编程,编程题(或问答),用JAVA SOCKET编程,读服务器几个字符,再写入本地显示? 答:Server端程序: package test;import java.net.*;import java.io.*;public class Server { private ServerSocket ss;private Socket socket;private BufferedReader in;private PrintWriter out;public Server(){ try { ss=new ServerSocket(10000);while(true){ socket = ss.accept();String RemoteIP = socket.getInetAddress().getHostAddress();String RemotePort = “:”+socket.getLocalPort();System.out.println(“A client come in!IP:”+RemoteIP+RemotePort);in = new BufferedReader(new InputStreamReader(socket.getInputStream()));String line = in.readLine();System.out.println(“Cleint send is :” + line);out = new PrintWriter(socket.getOutputStream(),true);out.println(“Your Message Received!”);out.close();in.close();socket.close();} }catch(IOException e){ out.println(“wrong”);} } public static void main(String[] args){ new Server();} }; Client端程序: package test;import java.io.*;import java.net.*;public class Client { Socket socket;BufferedReader in;PrintWriter out;public Client(){ try { System.out.println(“Try to Connect to 127.0.0.1:10000”);socket = new Socket(“127.0.0.1”,10000);System.out.println(“The Server Connected!”);System.out.println(“Please enter some Character:”);BufferedReader line = new BufferedReader(new InputStreamReader(System.in));out = new PrintWriter(socket.getOutputStream(),true);out.println(line.readLine());in = new BufferedReader(new InputStreamReader(socket.getInputStream()));System.out.println(in.readLine());out.close();in.close();socket.close();}catch(IOException e){ out.println(“Wrong”);} } public static void main(String[] args){ new Client();} }; 长沙java培训:java程序员面试之String类问题 据有关数据显示,目前,我国对软件人才的需求已达20万,并且以每年20%左右的速度增长。在未来5年内,合格软件人才的需求将远大于供给。2005年,我国软件人才的缺口已达42.5万,其中尤以Java程序员、Java工程师人才最为缺乏。 那么java程序员到底是一个什么类型的工作,他们需要掌握什么技能呢,而他们在企业面试中又会遇到什么考题呢?经欧泊泰克就业小编总结,在java程序员面试时经常会遇到String类问题,下面就让我们一起分析解决这些问题,让我们程序员们轻松应对。问题1: String s1 = “abc”; String s2 = “abc”; System.out.println(s1 == s2); 这里的结果是true.由于字符串是常量(内存中创建对象后不能修改), 而且字符串在程序中经常使用.所以Java对其提供了缓冲区.缓冲区内的字符串会被共享.使用双引号的形式定义字符串常量就是存储在缓冲区中的.使用“abc”时会先在缓冲区中查找是否存在此字符串, 没有就创建一个, 有则直接使用.第一次使用“abc”时会在缓冲区中创建, 第二次则是直接引用之前创建好的了.问题2: String s1 = new String(“abc”); String s2 = new String(“abc”); System.out.println(s1 == s2); 这里的结果是false.使用构造函数创建的字符串都是在缓冲区外面创建一个新的.所以只要是使用构造函数创建的字符串, 和任何字符串都不会相等.问题3: String s1 = “abc”; String s2 = “a”; String s3 = “bc”; String s4 = s2 + s3; System.out.println(s1 == s4); 这里的结果是false.Java中字符串的相加其内部是使用StringBuilder类的append()方法和toString()方法来实现的.而StringBuilder类toString()方法返回的字符串是通过构造函数创建的.问题4: String s1 = “abc”; String s2 = “a” + “bc”; System.out.println(s1 == s2); 这里的结果是true.其实这里的s2并没有进行字符串相加, 两个双引号形式的字符串常量相加, 在编译的时候直接会被转为一个字符串“abc”.问题5: String str = “abc”; str.substring(3); str.concat(“123”); System.out.println(str); 这里结果是“abc”.由于字符串是常量(内存中创建对象后不能修改), 该类中所有方法都不会改变字符串的值.如果希望使用一个可变的字符串, 可以使用StringBuilder或StringBuffer类。 讲解了那么多,对于这些问题,同学们是否熟记在心了呢。其实只要你平时多努力,勤操作,这些考题都不会难倒你。俗话说的好:世上无难事,只怕有心人! www.xiexiebang.com 成都java程序员培训哪里好? Java已成为当今市面上最受欢迎的编程软件,对于处于信息高速发达的今天,Java技术已经无处不在,手机软件、手机JAVA游戏、电脑软件等等。可以这样说,只要你使用手机、电脑等电子产品,你就会用到跟Java有关的东西。由此可见,对于我们这些将要面临巨大就业压力的在校大学生来说,掌握这样一款最流行的编程语言是多么重要。 不管你以后是从事硬件还是软件的开发,面试官的第一个问题就是“你会不会使用JAVA语言编程?” 同样,如果掌握了Java这门技术,就业面也是很广的,不管是电脑方面的软硬件开发还是手机的软硬件开发Java都是必不可少的技术,只要是想从事IT方面的工作,必须掌握Java。 除了这些Java还有很多用途,家里的洗衣机、微波炉等家电有可能是Java控制的,这是单片机的知识。找到自己喜欢的一个方向,专攻一个领域,才会做出成绩。 四川地处中国大西南,肥沃的土地,丰富的自然资源,悠久的历史和绚烂多彩的少数民族文化,构成了多样性的自然和文化旅游资源。每到中考季,很多初中生总是为自己的未来前途担心,尤其是一些学习成绩不好的初中生,他们不知道中考没考上怎么办。同时许多家长也担心,自己的孩子年龄还小,进入社会显然不合适。这个时候职业培训学校更加适合,放眼众多学院,四川国信安职业培训学校无疑是非常合适的。 不要被小编的慷慨陈词所打动了,和你们说好做彼此的天使,所以今天不选择套路你们。好了,言归正传,来看看小编送上的it培训福利是否能打动你吧~那么,实用的攻略有哪些?一般会选择哪家呢?哪个是最实用呢?下面就随小编来看一看吧~ www.xiexiebang.com 大部分的教授很少编程。因为他们不编程,他们就不会特别强调像代码审查或单元测试这样的好的开发方法。不相信我说的吗?那去GitHub上找找你喜欢的教授的作品吧。他能充满自豪的在上面展示他开发的代码吗? 因为很少有教授编程,所以你也应该不会吃惊于学校里很少有软件发布途径来供那些想展示自己软件作品的人使用。于是,这也就意味着,即使你开发出高质量的软件,也难有同行来欣赏。 大多数学院里的软件都是由学生写成,他们缺乏经验,缺乏写出好软件的动机。你也许会认为,在学校里花了4年时间,上了无数堂课,做了无数的编程作业后,大多数计算机科学/工程的学生都应该成为不错的程序员了。但这不是我看到的。部分的原因是学校教育是一个模仿老师的过程。我相信,如果大学四年你是跟着李纳斯·托沃兹(Linus Torvalds)上课,你一定会成为一个相当不错的操作系统内核编程高手。然而,Linus 不会、也不喜欢当一名大学教授。大学教授不花很多时间去编程,他的学生也会这样。 所以,学校里的软件很烂,是因为学校里的人不善于编程。但这其中还有一些其它因素: 编程可以像煎鸡蛋或建一个鸟窝那么简单。你也知道,写一个PHP脚本把数据库的内容展示到浏览器里并不是那么的难。但要开发出一个不凡的软件则需要程序员表现的像一个创造者。然而,你们的编程课程也许会教如何去煎一个鸡蛋(比喻),但他们不会教你如何设计一个给四星级饭店用的菜肴。创造出新奇软件的门槛也许比你想象的要低。根据一个论文里的算法,我们可以有十几种实现方法,但大部分都是低效率的。即使是已经有原型伪代码提供了,你仍然需要大量的工作经验在身,才能给出正确的设计。判断如何能正确的实现一个算法也许比你们想象的要难的多。理论家很少有认可这点的,他们通常相信最困难的部分是用缜密的理论知识设计出算法。他们不知道在两个相同计算复杂度的算法会在www.xiexiebang.com 软件实现上产生成几个数量级的速度差别。事实上,假设有人告诉你了作家Stephen King的下一部小说的大纲,你就能写出一部能和King写的一样好的小说吗?很值得怀疑。软件开发也类似。执行是一切。再好的策划也无效。大多数的学院里的研究者是为自己写软件。就像烹饪一样:“只给自己写软件的人不知道给别人写软件时有多少工作要做。”相比起在饭店里当一个厨师,给自己做饭要简单容易的多。这两者之间的难度差异如果说有两个数量级太大,那至少也不在一个数量级上。学术界里很少有人会认可这些。他们基本上写的都是写完即丢的代码:写好程序,使用它,然后忘了它。诸如维护和文档之类的问题,虽然在一些课堂上也讨论过,但在学院里,鲜有用于实践的。 那么,将来会如何?我对学校里的软件保持悲观态度。也许会有例外,但看总体情况,我不抱太大希望。因此,当我审查一个学生的研究报告或论文时,我会先假定实现这个理论的软件做的不怎么样。我希望招聘那些新程序员的人也要这样想。鉴于我这样的悲观论调,实际是有一些事情可以做的:如果你想在Facebook找到一份软件工程师的工作,你就应该多花一些时间在GitHub上,少花一些时间在课堂上。如果你幸运的话,你可以说服学校就你的开源作品给你一些学分。 国信安IT培训基地指定的官方IT人才培训机构。专注java培训、php培训、UI设计培训、IOS培训、安卓培训、嵌入式培训、.NET培训、web前端培训等培训课程。你们准备好怎么学习IT技术了吗?来参加国信安IT培训课程,你的选择不会有错!第二篇:java程序员 模拟面试重点题库
第三篇:java程序员部分面试题答案
第四篇:长沙java培训:java程序员面试题
第五篇:成都java程序员培训哪里好?