第三套java笔试题目(2015.1.28更新)
java笔试面试题目(3篇)
第1篇一、选择题(每题2分,共20分)1. 下列关于Java虚拟机(JVM)的说法,正确的是()。
A. JVM是Java程序的运行环境B. JVM是Java程序的编写环境C. JVM是Java程序的调试环境D. JVM是Java程序的编译环境解析:A。
JVM是Java程序的运行环境,负责将字节码转换为机器码执行。
2. 下列关于Java数据类型的说法,正确的是()。
A. Java中所有数据类型都是引用类型B. Java中基本数据类型包括int、float、char等C. Java中所有数据类型都是基本数据类型D. Java中基本数据类型包括int、float、char等,引用数据类型包括String、Object等解析:D。
Java中基本数据类型包括int、float、char等,引用数据类型包括String、Object等。
3. 下列关于Java面向对象的说法,正确的是()。
A. Java不支持面向对象编程B. Java支持面向对象编程,但不支持继承和多态C. Java支持面向对象编程,包括继承、多态、封装等特性D. Java支持面向对象编程,但封装不是Java面向对象的核心特性解析:C。
Java支持面向对象编程,包括继承、多态、封装等特性。
4. 下列关于Java异常处理的说法,正确的是()。
A. Java异常处理可以通过try-catch语句实现B. Java异常处理可以通过finally语句实现C. Java异常处理可以通过throw语句实现D. 以上说法都不正确解析:A。
Java异常处理可以通过try-catch语句实现。
5. 下列关于Java集合框架的说法,正确的是()。
A. Java集合框架包括List、Set、Map等接口B. Java集合框架包括List、Set、Map等类C. Java集合框架包括List、Set、Map等接口和类D. 以上说法都不正确解析:C。
Java集合框架包括List、Set、Map等接口和类。
java考试试题及答案
java考试试题及答案一、选择题1.以下关于Java的说法,哪个是正确的?A. Java是一种编程语言B. Java只能在Windows系统上运行C. Java只用于游戏开发D. Java不能用于Web开发答案:A2.下面哪个关键字用于定义一个类?A. classB. publicC. staticD. void答案:A3.Java中的基本数据类型有哪些?A. int, float, char, booleanB. Integer, Float, Character, BooleanC. String, Double, BooleanD. int, double, String, boolean答案:A4.以下哪个不是Java的访问修饰符?A. publicB. protectedC. privateD. final答案:D5.以下哪种循环结构在未知条件的情况下会被循环执行?A. for循环B. while循环C. do-while循环D. switch语句答案:C二、填空题1.Java中用于接收用户输入的类是__Scanner__。
2.Java中String类的equals()方法用于比较两个字符串的__内容__。
3.在Java中,用于创建对象的关键字是__new__。
4.Java中的集合类是位于__java.util__包下的。
5.Java中的逻辑与运算符是__&&__,逻辑或运算符是__||__。
三、简答题1.请简要介绍Java的特点及优势。
Java是一种跨平台的编程语言,具有以下特点和优势:- 简单易学:Java语法相对简单,与C++相比更容易上手。
- 面向对象:Java支持面向对象编程,具有封装、继承和多态的特性。
- 平台无关性:Java通过虚拟机实现跨平台,只需编写一次代码即可在不同操作系统上运行。
- 安全性:Java有严格的访问控制和内存管理机制,可防止非法访问和内存泄漏。
java笔试题及答案
java笔试题及答案在这篇文章中,我将为大家提供一些常见的Java笔试题及其答案。
无论你是准备面试还是进行自我评估,这些问题都能帮助你进一步了解Java编程语言和相关概念。
请您放心,以下笔试题的解答均为准确的,并能满足您的需求。
1. 什么是Java中的包(package)?答:Java中的包是用来组织类和接口的一种机制。
它将相关的类和接口放在一个单独的包中,从而使得代码更易于管理和维护。
可以将包理解为文件夹,类和接口则是包内的文件。
2. Java中的四种访问修饰符是什么?分别解释它们的作用。
答:四种访问修饰符分别是public、protected、private和default (即没有修饰符)。
它们用于限定类、成员变量和方法的访问范围。
具体作用如下:- public:可以被任何类访问。
- protected:可以被同一包内的类和子类访问。
- private:只能被所属类访问。
- default:只能被同一包内的类访问。
3. 什么是静态变量和静态方法?它们有什么特点?答:静态变量(static variable)是指在类中声明的变量,被所有该类的对象所共享。
静态方法(static method)是指在类中声明的方法,可以直接通过类名调用,无需创建对象。
静态变量和静态方法的特点如下:- 它们属于类而不是对象,因此可以在没有对象的情况下访问。
- 静态变量在内存中只有一个副本,所有对象共享该变量。
- 静态方法无法访问非静态成员,因为非静态成员属于对象,而静态方法没有隐式的对象引用。
4. Java中的重载(overload)和重写(override)有什么区别?答:重载是指在一个类中定义多个方法,具有相同的名称但参数类型或个数不同。
重载实现了多态性,可以根据不同的参数类型或个数选择调用相应的方法。
而重写是指子类重新定义父类的方法,并使用相同的名称、参数和返回类型。
重写实现了多态性,可以在运行时动态选择调用子类的方法还是父类的方法。
Java第三次作业题目2015版
第1题:简易绘图程序绘图应用程序。
利用学过的GUI 方法实现一个较为完整的绘图应用程序。
用户可以选择要画的图形(如线,椭圆,圆,矩形,弧,圆角矩形,多边形,折线等等),选择画笔颜色和画笔粗度,用鼠标单击和拖拽等动作绘图,并能将绘图结果保存为jpg和bmp格式。
参考界面(可自己设计)如下:【最大选题人数:5】第2题:计算器设计一个计算器应用程序,用于进行简单的加减乘除四则运算。
要求能对输入的算式判断运算符优先级,允许在表达式中出现常用的数学函数,如绝对值、取整、三角函数、倒数、平方根、平方、立方等。
参考界面(可自己设计)如下:【最大选题人数:5】第3题:设计一个万年历系统设计一个万年历系统,实现以下功能:【最大选题人数:3】(1)可以查看当前的年份、月份和日期;(2)有时间栏,便于用户查看当前时间;(3)能够查找1至9999年的日期与星期的关系。
其它功能可自行开发。
第4题:一个简单的算法演示程序选择一个算法(提供选择见下)、利用各种方法(图形、界面)演示算法的计算过程。
总体要求:(1)可以进行手动演示,也可以自动步进式演示。
(2)允许用户设置算法的各个输入参数,以及自动步进式演示中的时间间隔。
(3).使用图形界面,要符合日常软件使用规范设置菜单和界面。
可参考算法:1.最小生成树算法:Prim算法、Kruskal算法。
允许一下方式输入一个图形:绘制图形、输入邻接矩阵、输入边及其关联的顶点。
2.单源最短路算法:Disjkstra算法。
允许一下方式如数一个图形:绘制图形、输入邻接矩阵、输入边及其关联的顶点。
3.最优编码算法:Huffman编码算法。
允许用户输入一段英文文字,或者打开一个txt 文档(英文内容),据此文档内容进行编码。
要求动态列出每个字符的出现概率统计结果以及对应编码。
4.演示汉诺塔问题:设计并实现一个求解Hanoi 塔问题的图形版程序。
允许用户设置解题所使用的圆盘数。
用户应当能以两种主要的方式与程序交互。
java三级模拟试卷及答案
Java三级考试时间3小时理论知识基本概念一、单选,20题,每题1分,满分20分二、多选,35题,每题2分,满分70分三、判断,10题,每题1分,满分10分应用操作一、单选,20题,每题3分,满分60分二、多选,5题,每题4分,满分20分三、填空,5题,每题4分,满分20分操作技能试题1 65分试题2 35分计算机程序设计员(java)(三级)理论知识试卷基本概念试卷注意事项考试时间:40min。
请首先按要求在试卷的标封处填写您的姓名、准考证号和所在单位的名称。
请仔细阅读各种题目的回答要求,在规定位置填写您的答案。
不要在试卷上乱写乱画,不要在标封区填写无关的内容。
得分评分人一、单项选择题(第1题~第20题。
选择一个正确的答案,将相应的字母填入题内的括号中。
每题1分,满分20分) 1. 下面关于JA VA 的说法中,哪个是错误的?()A. Java 是一种完全面向对象的程序设计语言B. Java 支持goto 语句C. Java 提供了许多机制来保证程序的健壮性和安全性D. Java 是一门可以跨平台的语言2. 若要编写一个类Hello ,下列说法中哪个是错误的?()A. 源代码文件必须叫做Hello.java 或者hello.java ,否则编译出错B. 编译后生成的二进制码文件为Hello.classC. 运行的命令为java HelloD. 若将文件Hello.class 改名为hello.class ,那么用命令java hello 也可以运行3. 下面哪个不是Java 的基本数据类型?()byteA.B. charString C.booleanD.下列选项中不属于软件产业危机的是()。
4.开发周期过长 A.缺乏技术人才 B.成本过高C.不能在把软件交给客户之前发现所有错误D.List接口描述的是一种什么样的抽象数据结构?()5.一组元素,可以有相同的元素,元素有先后顺序A.一组元素,不能有相同的元素,元素有先后顺序 B.一组元素,可以有相同的元素,元素没有先后顺序 C.一组元素,不能有相同的元素,元素没有先后顺序 D.Set接口描述的是一种什么样的抽象数据结构?()6.一组元素,可以有相同的元素,元素有先后顺序 A.一组元素,不能有相同的元素,元素有先后顺序B.一组元素,可以有相同的元素,元素没有先后顺序 C.一组元素,不能有相同的元素,元素没有先后顺序D.Map7.接口描述的是一种什么样的抽象数据结构?()一组元素,可以有相同的元素,元素有先后顺序 A.一组元素,任意两个元素的关键字不能相同,值也不能相同 B.一组元素,任意两个元素的关键字不能相同,值可以相同 C.一组元素,不能有相同的元素,元素没有先后顺序 D.存放到HashMap中的对象必须实现哪两个方法才能被正确处理?()8.equalsA.和compareToequalsB.和hashCodehashCodeC.和toStringcloneD.和compareTo下面关于9.Java主要异常类的说法中,错误的是()。
java类笔试题目
java类笔试题目java类笔试题目Java是一个纯的面对对象的程序设计语言,它继承了 C++ 语言面对对象技术的核心,Java舍弃了C ++语言中简单引起错误的指针(以引用取代)、运算符重载、多重继承(以接口取代)等特性,增加了垃圾回收器功能用于回收不再被引用的对象所占据的内存空间,使得程序员不用再为内存管理而担忧。
以下是我整理的java类笔试题目,欢迎参考阅读!java类笔试题目一、单项选择题1.Java是从( )语言改进重新设计A.AdaB.C++C.PasacalD.BASIC答案:B2.下列语句哪一个正确( )A.Java程序经编译后会产生machine codeB.Java程序经编译后会产生byte codeC.Java程序经编译后会产生DLLD.以上都不正确答案:B3.下列说法正确的有( )A.class中的constructor不行省略B.constructor必需与class同名,但方法不能与class同名C.constructor在一个对象被new时执行。
D.一个class只能定义一个constructor答案:C4.供应Java存取数据库力量的包是( )A.java.sqlB.java.awtngD.java.swing答案:A5.下列运算符合法的是( )A.c=0; do{ --c; a=a-1; }while(a>0); 后,C的值是( )A.0B.1C.-1D.死循环答案:C7.下列哪一种叙述是正确的( )A.abstract修饰符可修饰字段、方法和类B.抽象方法的body部分必需用一对大括号{ }包住C.声明抽象方法,大括号可有可无D.声明抽象方法不行写出大括号答案:D8.下列语句正确的是( )A.形式参数可被视为local variableB.形式参数可被字段修饰符修饰C.形式参数为方法被调用时,真正被传递的参数D.形式参数不行以是对象答案:A9.下列哪种说法是正确的( )A.实例方法可直接调用超类的实例方法B.实例方法可直接调用超类的类方法C.实例方法可直接调用其他类的实例方法D.实例方法可直接调用本类的类方法答案:D二、多项选择题1.Java程序的种类有( )A.类(Class)B.AppletC.ApplicationD.Servlet2.下列说法正确的有( )A.环境变量可在编译source code时指定B.在编译程序时,所能指定的环境变量不包括class pathC.javac一次可同时编译数个Java源文件D.javac.exe能指定编译结果要置于哪个名目(directory)答案:BCD3.下列标识符不合法的有( )A.newB.$UsdollarsC.1234D.car.taxi答案:ACD4.下列说法错误的有( )A.数组是一种对象B.数组属于一种原生类C.int number=[]={31,23,33,43,35,63}D.数组的大小可以任意转变答案:BCD5.不能用来修饰interface的有( )A.privateB.publicC.protectedD.static答案:ACD6.下列正确的有( )A.call by value不会转变实际参数的数值B.call by reference能转变实际参数的参考地址C.call by reference不能转变实际参数的参考地址D.call by reference能转变实际参数的内容答案:ACD7.下列说法错误的有( )A.在类方法中可用this来调用本类的类方法B.在类方法中调用本类的类方法时可直接调用C.在类方法中只能调用本类中的类方法D.在类方法中肯定不能调用实例方法答案:ACD8.下列说法错误的有( )A.Java面对对象语言容许单独的过程与函数存在B.Java面对对象语言容许单独的方法存在C.Java语言中的方法属于类中的成员(member)D.Java语言中的方法必定隶属于某一类(对象),调用方法与过程或函数相同答案:ABC9.下列说法错误的有( )A.能被java.exe胜利运行的java class文件必需有main()方法B.J2SDK就是Java APIC.Appletviewer.exe可利用jar选项运行.jar文件D.能被Appletviewer胜利运行的java class文件必需有main ()方法三、推断题1.Java程序中的起始类名称必需与存放该类的文件名相同。
《计算机程序设计员(JAVA)》(三级)试题三
1.2.3单元名称:代码调试1、操作条件(1)PC机Pentium Ⅳ1.6G以上(2)WindowsXP Sp2(3)JDK 1.5(4)Eclipse 6.0(5)Oracle(6)Tomcat 6.0(7)Jsp 2.0(8) Servlet 2.4(9) Struts2 2.0(10)Hibernate 3.0(11)Spring 2.0(12)素材(文件夹)2、操作内容根据素材案例给定的设计任务要求,找到6处错误并修改调试使之正确运行;编程技术要求涉及到以下内容:(1)jsp技术的调错(2)struts2 技术的调错(3)业务逻辑代码调错(4)数据库sql语句的调错(5)spring技术的调错(6)hibernate技术以及对事物处理技术的调错3、操作要求(1)必须按照设计任务要求说明,找到出现错误的程序段,并标示出来。
(2)删除错误代码,添加正确代码。
(3)书写的代码要求符合常规的编码规范。
例如:Java命名规范及书写格式等。
(4)调试修改完的程序,源程序能够正确的编译和运行。
素材素材内容:1、素材文件夹: AccountAction.java。
2、任务说明(1)项目名称:银行取款项目(2)数据库表说明:用户信息表的PRAIMARYKEY :用户编号用户帐户表的PRAIMARYKEY :账户编号(3)处理说明在存款功能模块中有6处错误点,请依照下面说明找到出错点并进行修改。
●客户端获取值●从迭代器中取出的对象,要进行强制转换●数据类型的强制转换●页面的跳转●程序编码规则●方法的调用时参数错误具体要求:1、按照上述处理说明补充完成AccountAction.java存至考生文件夹。
2、要求1)改正错误后,银行取款项目的解决方案能够编译通过。
2)改正错误后后,银行取款项目的解决方案能够正确运行,并且能够满足需求文档的要求。
3)代码的命名规范、代码风格要符合JAVA通用的要求。
Java常见的笔试题及答案
1.下面哪个注解是在spring中的用作事务控制(B)
A .@Transaction
B .@Transactional
C .@Service
D .@Autowired
2.下面说法正确的是(D)
A :Linked List是使用了链表的结果,特点是查找效率高;
B :在高并发,多线程的情况下使用高效率Hash Map;
C :Array List是一个动态数组能自动扩展,所以设置初始长度没必要;
D :Set集合内元素不能重复,使用equals()来判断元素是否相等
3.下面哪个CSS属性会使DOM脱离文档流(A)
A . position:absolute;
B . position:relative;
C . position:static;
D . 都不对
4.下面说法错误的是(A)
A :通过代理Proxy.xxx()来执行被代理类的方法;
B :Java动态代理一搬是用来做切面编程的,在被代理类的方法执行前后加入一些代码;
C :动态代理中是通过反射的来执行被代理类的方法;
D:Java动态代理的代理类需要继承Invocation Handler接口;
5.在类设计中,类的成员变量要求仅仅能够被同一package下的类访问,请问应该使用下
列哪个修饰词(D)
A . protected
B . public
C . private
D .不需要任何修饰词。
java笔试题及答案2015
java笔试题及答案20151. 问题:请简述Java中的接口和抽象类的区别。
答案:接口和抽象类都是Java中用于抽象化概念的工具,但它们有以下区别:- 定义:接口是一种完全抽象的结构,不能包含实现细节;抽象类可以包含实现细节。
- 构造方法:接口不能有构造方法,而抽象类可以有构造方法。
- 实现:一个类可以实现多个接口,但只能继承一个抽象类。
- 访问修饰符:接口中的所有方法默认是public的,而抽象类中的方法可以是任意访问修饰符。
- 成员变量:接口中的成员变量默认是public static final的,而抽象类中的成员变量可以是任意类型。
2. 问题:Java中StringBuffer和StringBuilder有什么区别?答案:StringBuffer和StringBuilder都是可变字符串类,但它们有以下主要区别:- 线程安全:StringBuffer是线程安全的,而StringBuilder不是。
- 性能:由于同步机制,StringBuffer的性能通常比StringBuilder 低。
- 使用场景:在单线程环境下,推荐使用StringBuilder以获得更好的性能;在多线程环境下,推荐使用StringBuffer以避免数据不一致。
3. 问题:请解释Java中的垃圾回收机制。
答案:Java中的垃圾回收机制是指自动回收不再使用的对象所占用的内存。
这个过程由Java虚拟机(JVM)的垃圾回收器自动进行,不需要程序员手动管理。
垃圾回收机制主要涉及以下几个步骤:- 标记:垃圾回收器遍历所有对象,标记所有可达的对象。
- 清除:垃圾回收器清除所有未被标记的对象。
- 压缩:垃圾回收器将存活的对象移动到内存的一端,以减少内存碎片。
4. 问题:Java中的异常处理机制是怎样的?答案:Java中的异常处理机制通过try、catch、finally和throw关键字实现。
具体流程如下:- try块:包含可能抛出异常的代码。
java笔试题及答案.doc
java笔试题及答案.docjava笔试题及答案有了下面java笔试题及答案,进行java笔试时就容易多了,请您对下文进行参考:1、作用域public,private,protected,以及不写时的区别答:区别如下:作用域当前类同一package子孙类其他package public 7 7 7 7 protected 7 7 7 X friendly 7 7 X X private 7 X X X 不写时默认为friendly2、Anonymouslnner Class (匿名内部类)是否可以exte nd s (继承)其它类,是否可以imple ment s (实现)i nterf ace (接口)答:匿名的内部类是没有名字的内部类。
不能exte n ds (继承)其它类,但一个内部类可以作为一个接口,由另一个内部类实现3、Sta ti cNestedC las s 和Inner Clas s 的不同答:Nes tedC lass (一般是C+ +的说法),In nerClass (—般是JAVA的说法)。
J ava内部类与C++嵌套类最大的不同就在于是否有指向外部的引用上。
注:静态内部类(I nn erClass)意味着1创建一个st atic内部类的对象,不需要一个外部类对象,2不能从一个st atic内部类的一个对象访问一个外部类对象4、和的区别答:是位运算符,表示按位与运算,是逻辑运算符,表示遷辑与(and )5、Coll ect ion 和Col lect ions 的区别答:Coll ect ion是集合类的上级接口,继承与他的接口主要有Set和List.Col lections是针对集合类的一个帮助类,他提供一系列静态方法实现对各种集合的搜索、排序、线程安全化等操作6、什么时候用assert答:asserti on (断言)在软件开发中是一种常用的调试方式,很多开发语言中都支持这种机制。
JAVA测试题(三套含答案)
JAVA测试题(三套含答案)姓名:马果联系方式:考试开始时间:1.在单一文件中import、class和package的正确出现顺序是:AA. package, import, classB. class, import, packageC. import, package, classD. package, class, import2. public static void main方法的参数描述是:A,DA. String args[]B. Strings args[]C. String argsD. String []args3.下面哪行代码会在编译的时候出现错误或警告:A,B,C,DA. float f=1.3;B. char c=\C. byte b=257;D. boolean b=null;E. int i=10;4. 编译,运行下列代码后的结果是:Dpublic class Test {public static void main (String args []) {int age;age = age + 1;System.out.println(\}}A.编译,运行后没有输出B.编译,运行后输出:The age is 1C.能通过编译,但运行时产生错误D.不能通过编译4.下面那些关键字不是JAVA的关键字 B A if B then C goto D while E case5.下面那些不是合法的变量定义:A,F A.2variable B.variable2C. _whatavariable1姓名:马果联系方式:考试开始时间:D. _3_E. $anothervarF. #myvar6.内部数据类型byte的取值范围是 BA.0 - 65, 535B.(�C128) �C 127C.(�C32,768) �C 32,767D.(�C256) �C 2557.下列哪些表达式返回true ABA.\B.\C.\D.\8.声明公用的abstract方法的正确格式是 AA.public abstract void add(); B.public abstract void add() {} C.public abstract add(); D.public virtual add();9.下面的代码能打印出的结果为:C int i=1; switch (i) {case 0:System.out.println(\break; case 1:System.out.println(\case 2:System.out.println(\default:System.out.println(\}A.oneB.one, default C.one, two, default D.default10.下面的代码能打印出的结果为:B int i=9;switch (i) { default:2姓名:马果联系方式:考试开始时间: System.out.println(\case 0:System.out.println(\break; case 1:System.out.println(\case 2:System.out.println(\}A. defaultB.default, zeroC. error default clause not defined D.no output displayed 11.下面的代码那个能正常的编译通过:B,C Aint i=0; if(i) {System.out.println(\}Bboolean b=true; boolean b2=true; if(b==b2) {System.out.println(\} C.int i=1; int j=2;if(i==1|| j==2)System.out.println(\Dint i=1; int j=2;if(i==1 &| j==2)System.out.println(\12.Hello.txt不与Mine.java在同一个目录下,如果你试图编译,运行下面的代码,那么会是什么结果?Cimport java.io.*; public class Mine {public static void main(String argv[]){ Mine m=new Mine();System.out.println(m.amethod());3姓名:马果联系方式:考试开始时间:}public int amethod() { try {FileInputStream dis=new FileInputStream(\}catch (FileNotFoundException fne) { System.out.println(\return -1;}catch(IOException ioe) { } finally{System.out.println(\}return 0; } }13.当你试图准备编译,运行下面代码时会发生:CA.编译和运行很正常 B.编译时错误 C.运行时错误class Base {}class Sub extends Base {}class Sub2 extends Base {} public class CEx{public static void main(String argv[]){ Base b=new Base(); Sub s=(Sub) b; }}14.当你试图准备编译,运行下面代码时会发生:D public class Tux extends Thread{ static String sName = \public static void main(String argv[]){ Tux t = new Tux();t.piggy(sName);System.out.println(sName); }public void piggy(String sName){ sName = sName + \start(); }public void run(){for(int i=0;i < 4; i++){ sName = sName + \4姓名:马果联系方式:考试开始时间:}} }A.编译时错误B.编译成功,并打印出\C.编译成功,并打印出\ D.编译成功,并打印出\15.在什么情况下类获得默认的构造方法:BA.类被定义时B.类中没有定义任何构造方法时C.在类中至少定义了一个构造方法时16.listener(监听器)方法的正确的访问修饰符是什么?A A.public B.staticC.privateD.protectedE.Default(即默认为空)17. 假定有一个包含引起异常(不是一个RuntimeException)的代码的方法,用什么方式告诉方法的调用者要捕获该异常:B A.throw Exception B.throws Exception C.new Exception D.不用特别指定18.下面的代码能打印出的结果是:A,B public class MyFor{public static void main(String argv[]){ int i; int j;outer:for (i=1;i <3;i++) inner:for(j=1; j<3; j++) { if (j==2)continue outer;System.out.println(\ } } }A.Value for i=1 value for j=1B. Value for i=2 value for j=15感谢您的阅读,祝您生活愉快。
java笔试题目及答案
java笔试题目及答案1. 题目:请简述Java语言的特点及优势。
Java语言的特点及优势主要有以下几点:(1)面向对象:Java是一种纯粹的面向对象编程语言,支持类、继承、封装、多态等面向对象的特性,使得程序具有更好的结构性、可扩展性与可维护性。
(2)可移植性:Java语言通过编译成字节码,然后在Java虚拟机(JVM)上运行,实现了平台无关性。
只需在不同的平台上安装对应的JVM即可运行Java程序,方便实现跨平台开发。
(3)自动内存管理:Java语言通过垃圾回收机制实现自动内存管理,不需要开发者手动进行内存的申请和释放,降低了内存泄漏和野指针的风险。
(4)丰富的类库:Java拥有庞大的类库,为开发者提供了丰富的工具和类,简化了程序的编写过程,提高了开发效率。
(5)多线程支持:Java语言提供了多线程的支持,可以方便地实现并发编程,充分发挥多核CPU的计算能力。
(6)安全性:Java通过安全管理器对代码进行安全控制,提供了安全可靠的运行环境,可以防止潜在的恶意代码对系统造成危害。
2. 题目:请解释Java中的封装性及其优势。
封装是面向对象编程的核心概念之一,指将数据和对数据的操作进行封装,通过对外提供公共接口来控制对数据的访问和操作。
封装的优势主要有以下几点:(1)数据隐藏:通过封装,将数据隐藏在对象内部,外界无法直接访问和修改对象的数据,只能通过封装的方法来间接访问和操作数据。
这样可以保护数据的完整性和安全性,避免数据被误用或修改。
(2)代码复用:封装可以将一组相关的属性和方法封装到一个对象中,实现代码的复用。
其他程序可以通过实例化对象来直接使用对象中封装好的属性和方法,而无需重复编写相同的代码。
(3)模块化开发:封装可以将一个大型的程序拆分成多个小的模块,每个模块都可以独立进行设计、开发和测试,提高了代码的可读性和可维护性。
同时,封装还可以隐藏具体实现的细节,提供简单的接口供其他模块使用,降低了模块之间的耦合度。
java笔试题及答案
java笔试题及答案题目:Java 笔试题及答案一、基础语法1. 请解释 Java 中的接口和抽象类的区别。
答:接口(Interface)是一种完全抽象的类,它允许声明方法,但不允许实现这些方法。
接口中的方法默认是 public 和 abstract 的,且从 Java 8 开始,接口也可以包含默认方法和静态方法。
抽象类(Abstract Class)可以包含抽象方法和非抽象方法,允许有构造器,成员变量,以及具体的方法实现。
一个类可以实现多个接口,但只能继承一个抽象类。
2. 请解释 Java 中的集合框架。
答:Java 集合框架是 Java 中存储和处理一组对象的一套标准接口和类。
集合框架分为两大类:不包含重复元素的集合(如 List、Set)和可能包含重复元素的集合(如 Map、Bag)。
集合框架提供了一系列的接口和实现类,如 List 接口的实现类有 ArrayList 和LinkedList,Set 接口的实现类有 HashSet 和 TreeSet 等。
二、面向对象1. 请解释封装、继承和多态的概念。
答:封装是将对象的状态信息隐藏在对象内部,并通过公共方法对外提供服务。
继承允许新的类(子类)继承现有类(父类)的属性和方法,实现代码的复用。
多态是指允许使用子类的对象来替代父类的对象,子类可以重写父类的方法,从而在运行时表现出不同的行为。
2. 请解释抽象类和接口在实现多态中的作用。
答:抽象类通过定义抽象方法来规定子类必须实现的功能,而接口则通过声明方法签名来规定实现类必须提供的方法实现。
抽象类和接口都可以被子类继承或实现,这样可以确保子类具有某些共同的行为,是实现多态的基础。
三、异常处理1. 请解释 Java 中的异常处理机制。
答:Java 中的异常处理机制是通过 try-catch-finally 结构来实现的。
当 try 块中的代码可能会抛出异常时,catch 块用来捕获并处理这些异常。
JAVA工程师第3套试卷
Java工程师样题(三)单选题1:类ABC定义如下:1.public class ABC{ 2. public int max( int a, int b) { } 3. 4.} 将以下( )方法插入行3是不合法的。
( 2 分)A:public float max(float a, float b, float c){ }B:public int max (int c, int d){ }C:public float max(float a, float b){ }D:private int max(int a, int b, int c){ }答案:B2:Applet调用( )方法后,进入初始态。
( 2 分)A:start()B:init()C:stop()D:destroy()答案:B3:执行完代码int [ ] x = new int[25];后,以( )说明是正确的。
( 2 分)A:x[24]为0B:x[24]未定义C:x[25]为0D:x[0]为空答案:A4:实现接口的关键字是( )。
( 2 分)A:extendsB:extendC:implementsD:implement答案:C5:对于临界区代码,必须使用( )关键字来限定。
( 2 分)A:privateB:protectedC:synchronizedD:critical答案:C6:关于继承的说法正确的是( )。
( 2 分)A:子类将继承父类所有的属性和方法B:子类继承父类的非私有属性和方法C:子类只继承父类public方法和属性D:子类只继承父类的方法,而不继承属性答案:B7:JavaBean 的属性可以通过调用适当的bean方法进行( )。
( 2 分)A:读B:读写C:执行D:清空答案:B8:以下选项中循环结构合法的是( )。
( 2 分)A:while (int i〈7) { i++; System.out.println(“i is “+i); }B:int j=3; while(j) { System.out.println(“ j is “+j); }C:int j=0; for(int k=0; j + k !=10; j++,k++) { System.out.println(“ j is “+ j + “k is”+ k); }D:int j=0; do{ System.out.println( “j is “+j++); if (j = = 3) {continue loop;} }while (j〈10);答案:C9:下面语句哪个是正确的( )。
JAVA测试题(三套含答案)
JAVA测试题(三套含答案)1.在单一文件中import、class和package的正确出现顺序是:AA.package, import, classB.class, import, packageC.import, package, classD.package, class, import2.public static void main方法的参数描述是:A,DA.String args[]B.Strings args[]C.String argsD.String []args3.下面哪行代码会在编译的时候出现错误或警告:A,B,C,DA.float f=;B.char c="a";C.byte b=257;D.boolean b=null;E.int i=10;4. 编译,运行下列代码后的结果是:Dpublic class Test {public static void main (String args []) {int age;age = age + 1;"The age is " + age);}}A.编译,运行后没有输出B.编译,运行后输出:The age is 1C.能通过编译,但运行时产生错误D.不能通过编译4.下面那些关键字不是JAVA的关键字BA ifB thenC gotoD whileE case5.下面那些不是合法的变量定义:A,FC. _whatavariableD. _3_6.内部数据类型byte的取值范围是B - 65, 535B.(–128) – 127C.(–32,768) – 32,767D.(–256) – 2557.下列哪些表达式返回true ABA."john" == "john"B."john".equals("john")C."john" = "john"D."john".equals(new Button("john"))8.声明公用的abstract方法的正确格式是A A.public abstract void add();B.public abstract void add() {}C.public abstract add();D.public virtual add();9.下面的代码能打印出的结果为:Cint i=1;switch (i) {case 0:"zero");break;case 1:"one");case 2:"two");default:"default");}B.one, defaultC.one, two, defaultD.default10.下面的代码能打印出的结果为:Bint i=9;switch (i) {default:"default");case 0:case 1:"one");case 2:"two");}A.default, zeroC.error default clause not definedD.no output displayed11.下面的代码那个能正常的编译通过:B,C Aint i=0;if(i) {"Hello");Bboolean b=true;boolean b2=true;if(b==b2) {"So true");}C.int i=1;int j=2;if(i==1|| j==2)"OK");Dint i=1;int j=2;if(i==1 &| j==2)"OK");12.不与在同一个目录下,如果你试图编译,运行下面的代码,那么会是什么结果C import .*;public class Mine {public static void main(String argv[]){Mine m=new Mine();int amethod() {try {FileInputStream dis=new FileInputStream("");}catch (FileNotFoundException fne) {"No such file found");}catch(IOException ioe) {} finally{"Doing finally");return 0;}}13.当你试图准备编译,运行下面代码时会发生:C A.编译和运行很正常B.编译时错误C.运行时错误class Base {}class Sub extends Base {}class Sub2 extends Base {}public class CEx{public static void main(String argv[]){Base b=new Base();Sub s=(Sub) b;}}14.当你试图准备编译,运行下面代码时会发生:Dpublic class Tux extends Thread{static String sName = "vandeleur";public static void main(String argv[]){Tux t = new Tux();(sName);void piggy(String sName){sName = sName + " wiggy";start();}public void run(){for(int i=0;i < 4; i++){sName = sName + " " + i;}}A.编译时错误B.编译成功,并打印出"vandeleur wiggy"C.编译成功,并打印出" vandeleur wiggy 0 1 2 3" D.编译成功,并打印出" vandelur"15.在什么情况下类获得默认的构造方法:BB.类中没有定义任何构造方法时C.在类中至少定义了一个构造方法时16.listener(监听器)方法的正确的访问修饰符是什么A(即默认为空)17. 假定有一个包含引起异常(不是一个RuntimeException)的代码的方法,用什么方式告诉方法的调用者要捕获该异常:B ExceptionExceptionExceptionD.不用特别指定18.下面的代码能打印出的结果是:A,Bpublic class MyFor{public static void main(String argv[]){int i;int j;outer:for (i=1;i <3;i++)inner:for(j=1; j<3; j++) {if (j==2)continue outer;"Value for i=" + i + " Value for j=" +j);}}for i=1 value for j=1B. Value for i=2 value for j=1C. Value for i=2 value for j=2D. Value for i=3 value for j=119.那个代码能够添加在void amethod(int i) throws Exception {}B. void amethod(long i)throws Exception {}C. void amethod(long i){}D. public void amethod(int i) throws Exception {}20.运行下面代码能够得出的结果BString s=new String("Bicycle");char iEnd=3;icC. icyD. error: no method matching substring(int,char)21.下面定义的变量能执行那些操作AString s1=new String("Hello")String s2=new String("there");String s3=new String();A.s3=s1 + s2;B.s3=s1-s2;C.s3=s1 & s2;E.s3=s1 && s222. | 3);能打印出什么结果DA 6B 0C 1D 723. 传递4,0来运行下列代码中的方法divide(int a, int b),结果是:A public void divide(int a, int b) {try {int c = a / b;} catch (Exception e) {"Exception ");} finally {"Finally");}A.打印输出: Exception FinallyB.打印输出: FinallyC.打印输出: ExceptionD.没有任何输出24. 对public void ad d(int a) {…}方法的重写方法:AA.必须返回voidB.必须返回intC.可以返回任何需要的类型25. 对public void add(int a) {…}方法的重载方法应返回:CC.任何类型26. 下列类分别在不同的文件中定义:Cclass Vehicle {public void drive() {"Vehicle: drive");}}class Car extends Vehicle {public void drive() {"Car: drive");}}public class Test {public static void main (String args []) {Vehicle v;Car c;v = new Vehicle();c = new Car();();();v = c;();}}编译和执行类Test后,结果是:A.在语句v= c;处产生编译时错误B.在语句v= c;处产生运行时错误C.输出:Vehicle: driveCar: driveCar: driveD.输出:Vehicle: driveCar: driveVehicle: drive27. 在子类构造方法内的什么位置可以对超类的构造方法(super())进行调用:BA.子类构造方法的任何地方B.子类构造方法的第一条语句处C.子类构造方法的最后一条语句处D.不能对超类的构造方法进行调用28. 下列代码中有明显的语法错误的语句是:C1.public class Test {3.Employee e = new Employee("Bob", 48);4.();5.6. e = Null;7. e = new Employee("Denise", 36);8.();9.10.}}10116829. 选择可以建立线程的接口:AC.少数用于管理的系统部件30. 选择正确生成text field的代码,此text field最多能够显示10个字符(假定其字体有固定大小)并最初显示“hello”串:A TextField("hello", 10) ;TextField(10,"hello");TextField("hello",max,10);TextField("hello",10,max);31. 选择定义在Graphics类中的方法:A,C(int, int, int, int) ;(Image, int, int, ImageObserver) ;(String, int, int) ;(Component);(boolean);(Object);32. 从下面的布局管理器中选择按行放置控件、从左到右、从上到下,当一行装满时开始新的一行的布局管理器:B33. 选择可以替换一个Container对象布局的方法:A(aLayoutManager);(aLayoutManager);(aLayoutManager);34. 一个类Example的main()方法的参数是args,类被如下调用执行:java Example catmain方法中访问args[0]的输出是什么AD.抛出一个NullPointerException异常E.抛出一个ArrayIndexOutOfBoundsException异常35.下面的代码编译,运行后得出的结果:Dpublic class Conv{public static void main(String argv[]){Conv c=new Conv();String s=new String("ello");(s);}public void amethod(String s){char c='H';c+=s;编译成功,打印出"Hello"B. 编译成功,打印出"ello"C. 编译成功,打印出elloHD. 编译错误36.执行后打印的结果为:Cpublic class Oct{public static void main(String argv[]){Oct o = new Oct();();}public void amethod(){int oi= 012;编译,执行下面的代码会出现的结果:Apublic class Ref{public static void main(String argv[]){Ref r = new Ref();(r);}public void amethod(Ref r){int i=99;void multi(Ref r){= *2;}}A. 一个编译时错误B. 99C. 198D. 一个运行时错误.38.现在你存储一个唯一的整型序列,那么你需要哪个容器接口A39. 给出下列代码,请选择2个正确输出D,Epublic class Example{public static void main(String args[]){int i=0;do{it for i is”+i);} while (--i>0);it for i is 3it for i is 2it for i is 1it for i is 040. 打印的结果为:DA -2BC -3D<测试二>Java程序员笔试题一、单项选择题(共10题,每题2分,共20分)1.下列说法哪一个是正确的。
招聘试题第三套(java)
招聘试题31.选择题(4′×10):例题1.(d)class Parent{public void method1(){ //change hereSystem.out.println("Parent's method1()");}public void method2(){System.out.println("Parent's method2()");method1();}}class Child extends Parent{public void method1(){System.out.println("Child's method1()");}public static void main(String args[]){Child p = new Child();//change herep.method2();}}Choices:a. Compile time errorb. Run time errorc. prints : Parent's method2()Parent's method1()d. prints : Parent's method2()Child's method1()例题2:How can you force garbage collection of an object?A. Garbage collection cannot be forcedB. Call System.gc().C. Call System.gc(), passing in a reference to the object to be garbage collected.D. Call Runtime.gc().E. Set all references to the object to new values(null, for example).例题3:Consider the following class:1. class Test(int i) {2. void test(int i) {3. System.out.println(“I am an int.”);4. }5. void test(String s) {6. System.out.println(“I am a string.”);7. }8.9. public static void main(String args[]) {10. Test t=new Test();11. char ch='y';12. t.test(ch);13. }14. }Which of the statements below is true?(Choose one.)A. Line 5 will not compile, because void methods cannot be overridden.B. Line 12 will not compile, because there is no version of test() that rakes a char argument.C. The code will compile but will throw an exception at line 12.D. The code will compile and produce the following output: I am an int.E. The code will compile and produce the following output: I am a String.例题4:Which of the following lines of code will compile without error?A.int i=0;if (i) {System.out.println(“Hi”);}B.boolean b=true;boolean b2=true;if(b==b2) {System.out.println(“So true”);}C.int i=1;int j=2;if(i==1|| j==2)System.out.println(“OK”);D.int i=1;int j=2;if (i==1 &| j==2)System.out.println(“OK”);例题5:Given the following declarationString s = "hello";Which are legal code?A. s >> = 2;B. char c = s[3];C. s += "there";D. int i = s.length();E. s = s + 3;例题6 (CDE)Consider the following code:Integer s = new Integer(9);Integer t = new Integer(9);Long u = new Long(9);Which test would return true?A. (s==u)B. (s==t)C. (s.equals(t))D. (s.equals(9))E. (s.equals(new Integer(9))例题7(B)What would be the result of attempting to compile and run thefollowing piece of code?public class Test {public int x;public static void main(String args[]){System.out.println("Value is " + x);}}A. The output "Value is 0" is printed.B. Non-static variable x cannot be referenced from a static context..C. An "illegal array declaration syntax" compiler error occurs.D. A "possible reference before assignment" compiler error occurs.E. An object of type ArrayIndexOutOfBoundsException is thrown.例题8(AD)Given the following method body:{if (sometest()) {unsafe();}else {safe();}}The method "unsafe" might throw an IOException (which is not a subclass of RunTimeException). Which correctly completes the method of declaration when added at line one?A. public void methodName() throws ExceptionB. public void methodname()C. public void methodName() throw IOExceptionD. public void methodName() throws IOExceptionE. public IOException methodName()例题9(D)The following is a program1) class Exsuper{2) String name;3) String nick_name;4)5) public ExSuper(String s,String t){6) name = s;7) nick_name = t;8) }9)10) public string toString(){11) return name;12) }13) }14)15) public class Example extends ExSuper{16)17) public Example(String s,String t){18) super(s,t);19) }20)21) public String toString(){22) return name +”a.k.a”+nick_name;23) }24)25) public static void main(String args[]){26) ExSuper a = new ExSuper(“First”,”1st”);27) ExSuper b = new Ex ample(“Second”,”2nd”);28)29) System.out.println(“a is”+a.toString());30) System.out.println(“b is”+b.toString());31) }32) }What happens when the user attempts to compile and run this program? ` A.A Compiler error occurs at line 21B.An object of type ClassCastException is thrown at line 27 C.The following output:a is Firstb is secondD.The following output:a is Firstb is Second a.k.a 2ndF.The following output:a is First a.k.a 1stb is Second a.k.a 2nd例题10(D)What is written to the standard output given the following statement: System.out.println(4|7);Select the right answer:A.4B.5C.6D.7E.02.填空题(6′×5):例题1:Given:1. public class SwitchTest {2. public static void main(String[] args) {3. System.out.println(“value = “ + switchIt(4));4. }5. public static int switchIt(int x) {6. int j = 1;7. switch (x) {8. case 1: j++;9. case 2: j++;10. case 3: j++;11. case 4: j++;12. case 5: j++;13. default: j++;14. }15. return j + x;16. }17. }What is the result?value = ____例题2:Given:10. int i = 0;11. for (; i <4; i += 2) {12. System.out.print(i + “”);13. }14. System.out.println(i);What is the result?________例题3:1. public class test {2. public static void add3 (Integer i) }3. int val = i.intValue ( );4. val += 3;5. i = new Integer (val);6. }7.8. public static void main (String args [ ] ) {9. Integer i = new Integer (0);10. add3 (i);11. system.out.printIn (i.intValue ( ) );12. }13. )What is the result?______例题4:int index = 1;boolean[] test = new Boolean[3];boolean foo= test [index];What is the result?______例题5:1. public class test {2. public static string output = “”;3.4. public static void foo(int i) {5. try {6. if(i==1) {7. throw new Exception ();8. }9. output += “1”;10. }11. catch(Exception e) {12. output += “2”;13. return;14. }15. finally {16. output += “3”;17. }18. output += “4”;19. )20.21. public static void main (string args[]) (22. foo(0);23. foo(1);24.25. )26. )第24行时,output的值为______3.程序题(15′×2):1. 36块砖,36人搬。
S3Java笔试A卷
软件工程师迅腾软件工程师信息产业部全国信息化软件工程师认证考试笔试试卷 A注意:1.姓名、考号、证件号码必须在试卷上填写,不填写者成绩无效;2.考试结束时试卷必须交回,不交回试卷者成绩无效。
第一部分:选择题请选择正确答案并填写在答题卡上,不填写在答题卡上的答案无效。
每一道题目,所有答案都选对则得分,所选答案错误或不能选出所有正确答案。
则该题不得分,共50题70分。
(没有说明的即为只有一个正确答案)1、in out模式的参数在传递时实参只能是(B )(1分)A 常量B 变量C 常量变量都可以D 整形变量2、定义游标的格式正确的是()(1分)A CURSOR 名称IS SQL语句B CURSOR IS 名称= SQL语句C CURSOR SQL语句IS 名称D CURSOR 名称AS SQL语句3、触发器的类型有___种( B )(选择一项,1分)A 1B 2C 3D 44、当select语句没有返回行时,将引发下列哪个异常?()(1.5分)A No_rows_foundB No_data_foundC No_Data_rows_foundD Invalid_Number5、有关触发器的组成部分说明正确的有()(选择两项,2分)A Befor、After、Instead Of说明触发器的事件B When说明触发器的限制C Insert、Update、Delete说明触发器的定时D For Each row/Statement为触发器类型6、如果不希望JSP网页支持session,应该怎么办?()(1分)A 调用HttpSession的invalidate()方法B <%@page session="true"%>C <%@page session="false"%>D 调用HttpSession的enable()方法7、下列哪个方法是初始化Servlet的()(1分)A destroyB initC getServletD service8、关于JavaBean下面的说法错误的是()(选择两项,2分)A JavaBean是一个公共的类B JavaBean必须有一个默认(无参数)构造方法C JavaBean的属性要通过setXXX和getXXX方法来设置和获取D JavaBean的setXXX和getXXX方法必须成对出现9、要创建Servlet过滤器必须实现()(1分)A java.servlet.FilterB javax.servlet.FilterC java.Httpservlet.FilterD javax.Httpservlet.Filter10、ServletContext对象是由谁创建的?()(1.5分)A、由Servlet容器负责创建,对于每个HTTP请求,Servlet容器都会创建一个ServletContext对象B、由JavaWeb应用本身负责为自己创建一个ServletContext对象C、当接受HTTP请求时由容器自动创建D、由Servlet容器负责创建,对于每个JavaWeb应用,在启动时,Servlet容器都会创建一个ServletContext对象11、迭代操作主要包含的标签有()(1.5分)A <c:choose>B <c:out>C <c:forTokens>D <c:if>12、作为Servlet类必须实现()(2分)A javax.servlet.HttpServletB javax.Httpservlet. ServletC javax.Httpservlet.HttpServletD javax.servlet.Servlet13、假设在helloapp应用中有一个HelloServlet类,它在web.xml文件中的配置如下:<servlet><servlet-name>HelloServlet</servlet-class><servlet-class>org.javathinker.HelloServlet</servlet-class></servlet><servlet-mapping><servlet-name>HelloServlet</servlet-class><url-pattern>/hello<url-pattern></ servlet-mapping>那么在浏览器端访问HelloServlet的URL是什么?( ) (1.5分)A http://localhost:8080/HelloServletB http://localhost:8080/helloapp/HelloServletC http://localhost:8080/helloapp/org/javathinker/HelloServletD http://localhost:8080/helloapp/hello14、在web项目中的WebRoot文件夹下建了一个admin文件夹,并在这个admin文件夹下写了一些管理员操作的页面,想用Servlet过滤器来过滤一下admin文件夹下的页面,当在配置Servlet过滤器时,<url-pattern>_________</url-pattern>中省略的内容为:()(1.5分)A /admin/*B admin/*C adminD */admin/*15、哪两项在web.xml中是合法的?()(选择两项,1.5分)A <error-page><exception-type>*</exception-type><location>/error.html</location></error-page>B <error-page><exception-type>java.io.IOException</exception-type><location>/error.html</location></error-page>C <error-page><exception-type>ng.Error</exception-type><location>/error.html</location></error-page>D <error-page><exception-type>ng.Throwable</exception-type><location>/error.html</location></error-page>16、从HTTP请求中,获得请求参数,应该调用哪个方法?(B )(1分)A 调用HttpServletRequest对象的getParameter ()方法B 调用HttpServletResponse对象的getAttribute ()方法C 调用ServletContext对象的getAttribute()方法D 调用ServletRequest对象的getParameter()方法17、在<action>元素中,(A )属性设置和Action关联的form bean在request/session内的属性key?(2分)A nameB attributeC pathD input18、ActionServlet继承自(A )(1.5分)A javax.servlet.http.HttpServletB java.servlet.http.HttpServletC org.apache.servlet.http.HttpServletD org.apache.http.HttpServlet19、在Struts中,一般在ActionBean类的末尾处(return前),加入一句“request.removeAttribute(mapping.getAttribute()) ;”这句话的含义是(C)。
JAVA认证第三套
Java 论证复习资料1 在Java中,对象在何种状态下会被回收?( A )A 当没有引用变量再指向该对象时B 当对象关系的引用变量消失时C 当没有任何程序再访问一个对象或对象的成员变量时D 当对象的所有成员函数都执行一遍以后2:如果catch块中包括多个异常类,这些异常类的匹配原则是什么?( C )A 接try块中程序执行的顺序,寻找最通用的异常类B 接try块中程序执行的顺序,寻找能够最精确匹配的类C 接catch块中异常类的排列顺序,寻找第一个能够匹配(也就是做出的异常对象属于catch块的异常类,或是catch块中异常类的)D 在catch块中寻找能够最精确匹配的类3 小程序的生命周期包括哪些阶段?( A )A 载入,运行,离开,返回,卸载,等阶段B 载入,运行,函数阶段C 运行阶段,停止阶段D 下载,载入,运行阶段4Jbuilder是什么?( C )A 是一种新的语言B 是一种通用的集成化软件开发环境C 是用于Java程序设计的一套集成化软件开发环境D 是一种Java平台5简单变量应当如何初始化?(B )A 简单变量需要单独进行初始化,之后才能使用B 对于简单变量,只需要给它赋值就完成了初始化C 引用变量和简单变量都需要用new关键字进行初始化了D 只有引用变量需要初始化,简单变量可以不初始化6在Java中如何保证简单变量在使用前一定被初始化过?( D )A Java程序运行时会自动判断,如果变量在使用时尚未初始化,则自动进行初始化,然后再使用B Java编译器会自动判断,如果一个变量在使用前可能尚未初始化,则编译题会提出警告,编译人员最好能够修改程序,避免此C 编程人员要确保在使用前一定初始化过,否则会得到不可预料的结果D Java编译器会自动判断,如果一个变量在使用前可能尚未初始化,则编译题会报错,要求程序必须修改7如何定义类的继承关系?( A )A 在类的定义部分使用extends关键字B 在类的定义部分使用inherited关键字C 在类的定义部分使用parent关键字D 在类的定义部分使用implement关键字8在Java中,一个类最多允许有几个直接父类?(A )A 一个B 二个C 四个D 无现制9每一个类,它是所有Java类的直接或间接的父类,这个类是( C )A Class类B System类C Object类D ng类10(有图)对下面的UML图的描述,错误的是(D )A 接口没有构造函数,因此也没有空心矩形B 虚线空心箭头表示实现接口的类C 接口用深色方框表示D 接口用浅色方框表示11Java系统如何区分字符串连接的“+”号和算术运算的加法“+”号?(D )A 在“+”号两边只要存在数字,就一定是算术加法符号B 在表达式中只要存在字符串,“+”号就是字符串连接符C 字符串之间,字符串和数字之间的“+”号是字符串连接符,数字之间的“+”号是算术加法D 表达式中如果以字符串开头,那么其后的“+”号都是字符串连接符12设置线程的优先级时需要注意哪些问题?(B )A 一个程序中至少要有一个线程设置成低优先级B 如果程序员将他的线程设为最高优先级,他就有责任保证不干扰其他应用程序的正常执行C 一个程序中最多只能有一个线程设置成高优先级D 所有的线程都要设置成最高优先级,以加快执行速度13在二进制文件的读写中,以下注意事项中错误的是(D )A 二进制文件的文件对象不能用File类,而需要用FileInputStrean和FileOutputStrean类B 在利用DataInputStrean读出文件数据的时候,并不能判断数据类型,它仅仅是根据函数的要求读入相应长度的二进制字节,再C 数据的写入和读出必须严格按照相同的顺序,否则会出现错误D 二进制文件只能读写数值,不能读写字符串14Jbuild产生的可执行程序有什么优点?( D )A 可以利用Visual Studio等其它集成平台设计Java程序B 对于没有装Java虚拟机的操作系统,也可以运行C 可执行程序可以跨平台运行D 可以直接双击程序运行,运行方便15顶级Swing容器的作用是什么?(C )A 作为其它一切组件显示的基础B 必须是入口类,作为图形界面程序的载体C 为其它Swing组件在屏幕上的绘制和处理事件提供支持D 必须是入口类,作为程序的数据存储的载体16在Java的图形界面程序中,为便于排列,组件一般放在哪里?( B )A 对话框上B 面板上C 直接放在框架上D 标签上17如何在框架中加入各种组件?( C )A 用框架的add函数直接加入组件B 将组件作为框架对象的成员变量即可C 用getContent函数获取内容窗格,在内容窗格中用add函数加入各种组件D 将组件作为入口类的成员变量即可18如何在框架中加入菜单栏?( C )A 通过框架的add函数将菜单栏直接放到框架上B 通过内容窗格的add函数将菜单栏放到内容窗格上C 通过框架的setJMenuBar函数加入菜单栏D 将菜单栏作为框架的一个成员变量19如何调整框架的大小?(A )A 利用setSize函数调整框架的大小B 框架的大小是由内部的组件大小决定的,不能直接调整框架大小C 在初始化文件(int文件)中设置D 在注册表中设置20关于卡片式布局,以下描述中错误的是(D )A 它所管理的不是组件,而是面板B 卡片式布局中一般都有好几个相同的面板,每次只能显示其中的一个面板C 作用类似于摆在一起的卡片,每次只能显示最顶上的一张D 可以一次只显示一张卡片,也可以水平、垂直排列所有卡片21关于卡片布局的面板与标签页面板的对比,以下描述中错误的是(D )A 标签页面板的灵活性不如卡片式的布局高B标签页面板有自己的图行界面,使用里起来比卡片式布局简单一些C卡片式布局没有顶端的标签页D卡片式布局与标签页面面板的一回事22如何创建一个卡片式布局的面板?( C )A 设置框架的布局管理器为卡片式布局B 创建一个CardPand类型的面板C创建一个CardLayout的对象,利用setLayout函数将布局管理器设置为该对象D创建一个CardLayout对象,将面板作为参数传递给该对象23在网络程序中,是否需要使用线程技术?(D )A 不需要,由于网络连接采用中断方式,因此不需要采用线程B 不需要,由于网络连接采用事件方式,因此不需要采用线程C 需要,由于网络连接采用事件方式,需使用独立的线程处理事件D 需要,因为网络线程中存在很多等待过程,因为需要独立的线程来等待网络消息24在Java中,对象在何种状态下被回收?(A )A当没有引用变量在指向该对象时B当对象关联的引用变量消息时C当没有任何程序再访问一个对象或对象成员变量时D当对象的所有成员函数都执行一遍以后25 简单变量和引用变量的初始化有什么区别?( A )A 简单变量的初始化只需要给它赋一个值,而引用变量的初始化需要指向一个存在的对象B 二者都需要初始化,因此它们的初始化也没有区别C 简单变量的初始化需要为它分配一个数值单元,而引用变量的初始化只需要给它赋一个值就可以了D 二者的初始化都需要指向一个存在的单元,但前者需要指向一个数值单元,后者需要指向一个对象26 以下异常中,不属于Runtime Eception的是( D )A IndexoutofaBound Exception数组下标越界异常B NullPointerException 使用未初始化的引用变量C ArithmeticException算术异常D IllegalAccessException 没有足够的权限访问其他类的成员27 如何调用JA V A小程序?( D)A双击小程序文件即可执行B在命令行为方式下键入JA V A命令来调用C在JBuilder中键入JA V A命令来调用D打开HTML文件即可调用,或者利用appletviewer命令调用28 在创建JBuilder工程的步骤中,下面哪一步是错误的?( B )A设置工程类型为“jpx”B选择最终产生的可执行文件运行的操作系统平台C设置JBuilder工程所在的目录位置D输入工程名29 while循环的含义是( C )A 反复执行花括号里的语句,直到条件表达式为真B 反复执行花括号里的语句,执行次数等于条件表达式的值C 当条件表达式为真时,反复执行花括号里的语句D 反复执行花括号里的语句,执行次数等于条件表达式的值,之后再判断条件表达式的值是否正确30 while循环和do while循环有什么区别?( C )A while循环是当条件表达式为真是,反复执行循环语句,而do while循环是反复执行循环语句,直至条件表达式为真B while循环比do while循环要少执行一次C while循环是先判断,再执行,而do while循环是先执行,后判断D while循环至少执行一次,而do while循环可能一次也不执行31 java中是否区分函数和子程序?( D )A区分,带有返回值的是函数,用“function”关键字定义B 不区分,java中的所有函数都必需要有一个返回值C区分,不带有返回值的是子程序,用“procedure”关键字定义D 不区分,没有返回值的函数相当于其它语言中的子程序32 什么是函数的返回值?( C )A 返回值在函数中通过一个与函数名称相同的变量给出B返回值在函数中通过一个特殊的“result”变量给出C返回值是函数传输给外界的数据D返回值在主程序中通过特殊的“funcName.result”变量得到33 调用函数时,如何保证传递给函数的值与函数的参数对应?( C )A 传递给函数的变量名要与函数定义时的变量名相一致B传递给函数的变量值要与函数定义时的变量的值相一致C传递给函数的参数类型、数量、先后顺序有要于函数定义中的一致D只需传递给函数的参数数量一致就可以了34 在接口定义中,不包括的内容是( A )A 实现接口的类列表B 函数定义C “interface”关键字D 接口定义和接口主体35 Java内部如何利用”+”号将字符串连接在一起?( C )A ”+”号相当于append函数,在String对象的后面添加字符串B ”+”号相当于append函数,在StringBuffer对象的后面添加字符串,因此只有StringBuffer对象能用”+”号连接符C java在用”+”号进行字符串连接的时候,是新建一个StringBuffer对象,用它按理连接所有的字符串,最后在转回String对象D ”+”号相当于append函数,在String对象的后面添加字符串,因此只有String对象才能用”+”号连接符,StringBuffer对象36线程间如何实现数据同步?(A )A 通过wait/notify函数和线程间的标志变量来实现B 通过线程间的管道通讯来实现C 通过全局变量来实现D 仅通过wait/notify函数即可37 在JAVA中,绝对路径和规范路径有什么区别?( D )A 绝对路径是按照操作系统的规范命名的路径,而规范路径是按照Java的统一规范所命名的路径B 绝对路径没有盘符,而规范路径有盘符C 绝对路径和规范路径是一致的D 绝对路径是当前路径叠加在相对路径之前,它的格式不一定规范,而规范路径是按照规范的路径格式表示的38 为了用JBuider调试程序,首先需要做什么工作( A )A 需要从菜单中选择"Rnn"--"Debug Project",以调节方式运行B 需要从菜单中选择"Rnn"--"Rnn Project"来运行程序C 需要在JBuider的命令方式下键如java命令来运行程序D 需要在命令方式下键入java命令来运行程序39 框架中包括那些窗格?( C )A 只有根窗格、内容窗格、工具栏B 只有内容窗格、工具栏C 有根窗格、分层窗格、内容窗格、工具栏、玻璃窗格等D 只有内容窗格40 以下关于框架的各窗格之间的关系的描述中,错误的是( D )A 分层窗格和玻璃窗格直属于根窗格B 内容窗格和菜单栏属于分层窗格C 玻璃窗格和内容窗格之间没有隶属于关系D 内容窗格直属于根窗格41 在消息中,常见的图标有哪几种?( D )A 确定图标,取消图标B 运行图标,停止图标C 确定图标,重试图标,取消图标D 消息图标,提问图标,警告图标,错误图标42 利用JOptionPane类可以创建哪几类对话框?( C )A 消息框、确认框、输入框、文件框等B 只能创建消息框和确认值C 消息框、确认狂,选择框、输入框等D 只能创建消息框43 如何创建消息框?( C )A 创建一个JMessageDialog对象B 创建一个类,实现JMessageDialog接口C 用JOptionPane 类的shouMessageDialog函数创建D 创建一个JDialog对象,再在其中放一个确认按钮44 在流式布局中,如果设置组件的对齐方式有对齐,组件横向间隙为18,纵向间隙为12,该用什么语句来实现?( D)A panel.setAlignmentX(JComponent.RIGHT)B layout1. setAlignmentX(JComponent.RIGHT)C button1. setAlignmentX(JComponent.RIGHT)D panel1.setLayout(new FlowLayout.TRAILING,18,12))45 关于表格型布局的特点,以下描述中错误的是( A )A 每一个中可以放一个或多个组件B 表格布局管理器将容器变成一个表格,其中每一格的大小是完全相同的C 每个组件都放在其中一格中D 如果拉大框架,则每一格和格里的组件也会相应变大46 关于表格型布局的特点,以下描述中错误的是(A)A 每一格中可以放一个或多个组件B 表格型布局管理器将容器变成一个表格,其中每一格的大小是完全相同的C 每个组件都放在其中一格中D 如果拉大框架,则每一格和格里的组件也会相应的变大47 建立客户端时需要考虑哪些问题?( C )A 必须用try…catch块捕获IOException异常B 连接客户端会很慢,因此必须单独打开一个线程进行连接C 当连上远程计算机时,会自动触发一个网络连接事件,需要用相应的事件处理函数进行处理D 网络连接采用中断形式,因此需要增加中断处理函数二多项选择题1以下的Java程序代码中,错误的行是( A B)此题与题目录入者的可能的手误有很大关系,要注意原题的大小写等。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
Y2第三次摸底考试笔试试卷(JA V A)
(2015年1月28日下午13:30—上午15:30)
一、问答题目:(30个*2分=60分)
1、什么是java序列化,如何实现java序列化?
2、谈谈final, finally, finalize的差别。
3、有没有length()这个方法? String 有没有length()这个方法?
4、 GC 是什么? 为什么要有GC?
5、是否可以继承String 类?为什么?构造器Constructor是否可被override?
6、 try {}里有一个return 语句,那么紧跟在这个try 后的finally {}里的code会不会被执行,
什么时候被执行,在return 前还是后?
7、 HashMap 和Hashtable 的区别?
8、 Arraylist 与Vector 区别?
9、说出ArrayList,Vector, LinkedList的存储性能和特性
10、EJB是基于哪些技术实现的?并说出SessionBean和EntityBean的区别,
StatefulBean和StatelessBean的区别。
11、abstract class 和interface的区别
12、jsp的内置对象有哪些?
13、session如何存放数据,通过什么方法?
14、说说你说知道的设计模式?
15、什麽是堆?什麽是栈?它们之间的区别?
17、error和exception有什么区别?
18、描述一下程序开发的方法,如工厂模式、门面模式,为什么采用这种模式?
19、session和cookie的区别。
20、EJB2.0 中包括那些内容?作用分别是什么?
21、JavaScript简称什么?一般运行在服务断还是客户端?
22、如何通过JavaScript获取当前页面的完整路径?
23、请描述Web应用服务器有哪些?
24、在JAVA中,哪种数据结构排序最快?为什么?
25、在XML元素之前的文本信息中包含<或者&的时候该如何处理?
26、在页面中直接写JAVASCRIPT代码和在页面中引入单独的JAVASCRIPT文件有
什么区别?
27、在JAVASCRIPT代码中如何对一个数字进行四舍五入?
28、请写出任意一种在页面上循环输出保存在request中的一个list<Student>
对象中有name和age属性。
29、C/S 与B/S 区别?(简述)
30、jsp有哪些动作?作用分别是什么?
二、数据库题目:(第1、2小题3分,第3小题4分,共10分)
1、有三张表,学生表S,课程表C,学生课程表SC,学生可以选修多门课程,一门课程可以被多个学生选修,通过SC 表关联。
1)写出建表语句;
2)写出SQL 语句,查询选修了所有选修课程的学生;
3)写出SQL 语句,查询选修了至少5 门以上的课程的学生。
三、程序开发题目:(5个*6分=30分)
1、怎样在不使用第三方变量的情况下交换两个参数?写代码完成。
(如:int x=51;int y = 28,转换后,x=28,y=51)
2、金额转换,阿拉伯数字的金额转换成中国传统的形式如:(¥1011)->(一千零一拾一元整)。
3、现有字符串“当前余额:11,069.47”,使用正则表达式匹配出余额,要求结果为:11,069.47。
4、请写一个Struts2自定义拦截器,并写出相应的配置文件。
5、利用递归方法求5!。
(说明:5!=5*4*3*2*1)。