2017年java笔试题精选汇编
- 格式:docx
- 大小:23.31 KB
- 文档页数:20
初级java程序员笔试题及答案2017年初级java程序员笔试题及答案 程序员需要理解⼀个模块的需求,很多程序员写程序往往只关注⼀个功能需求,他们把性能指标全部归结到硬件,操作系统和开发环境上,⽽忽视了本⾝代码的性能考虑,性能需求指标中。
下⾯是⼩编整理的关于初级java程序员笔试题及答案,希望⼤家认真阅读! ⼀、选择题 以下对Java语⾔描述不正确的是(C ) A Java语⾔是⼀个完全⾯对对象的语⾔ B Java是结构独⽴、与平台⽆关的语⾔ C Java是⼀种编译性语⾔ D Java是⼀种解释性语⾔ 以下说法正确的是(C ) A Java程序⽂件名必须是和程序⽂件中定义的类型⼀致 B Java程序⽂件名可以和程序⽂件中定义的类名不⼀致 C Java源程序⽂件的扩展名必须是.java D以上A、C说法正确,B说法不正确 以下有关运⾏Java应⽤程序(Application)正确的说法是(B ) A Java应⽤程序是由Java编译器解释执⾏的 B Java应⽤程序经编译后⽣成的字节代码可由Java虚拟机解释执⾏ C Java应⽤程序经编译后可直接在操作系统下运⾏ D Java应⽤程序经编译后可直接在浏览器中运⾏ 4、以下有关标识符说法中正确的是(C ) A、任何字符的组合都可以形成⼀个标识符 B、Java的关键字也可以作为标识符使⽤ C、标识符是以字母、下划线或$开头,后跟字母、数字、下划线或$的字符组合 D、标识符是不分⼤⼩写 5、以下说法正确的是(D ) A、基本字符数据类型有字符和字符串两种 B、字符类型占两个字节,可保存两个字符 C、字符类型占两个字节,可保存⼀个字符 D、以上说法都是错误的 6、以下有关类型转变的说法错误的是(D ) A、低精度类型向⾼精度类型转换时,不会丢失数据精度 B、系统会⾃动进⾏(整型或浮点型)低精度类型数据向⾼精度类型数据的转换 C、⾼精度类型数据向低精度类型数据的转换、整型和浮点型数据之间的转换,必须强制进⾏,有可能会引起数据丢失 D、⾼精度类型数据向低精度类型转换时,也不会丢失数据精度,因为转换是系统进⾏的 7、以下正确的关系表达式(D )A、x≥yB、x+y<>zC、>=xD、x+y!=z 8、以下正确的逻辑表达式( A)A、(x+y>7)&&(x-y<1)B、!(x+y)C、(x+y>7)||(z=a)D、(x+y+z)&&(z>=0) 9、以下有关条件运算符(?:)说法正确的是( D) A、条件运算符是⼀个三元运算符,其格式是:表达式1?表达式2:表达式3 B、格式中的“表达式1”是关系或者逻辑表达式,其值是boolean值 C、若“表达式1”成⽴,该条件表达式取“表达式2”的值,否则取“表达式3”的值 D、以上说法都正确 10、在if(表达式)语句中,“表达式”的值必须是(C )A、任意整数值B、字符串C、布尔逻辑值D、⾮零值 11、在switch(表达式)语句中,“表达式”的值必须是(D )A、整数值B、字符值C、布尔逻辑值D、整数或字符值 12、下列关于for循环和while循环的说法中,正确的是(A ) A、while循环能实现的操作,for循环也能实现 B、while循环判断条件⼀般是程序结果,for循环判断条件⼀般是⾮程序结果 C、两种循环任何时候都可以替换 D、两种循环结构中必须都有循环体,循环体不能为空 13、下⾯表达式中,⽤来访问数组中的第⼀个值的是(C )A、intArray[1]B、intArray.1C、intArray[0]D、intArray.0 14下⾯的表达式中正确的是(C ) String s=”你好”;if(s==”你好”) System.out.println(true); String s=”你好”;if(s!=”你好”) System.out.println(false); String s=”你好”;if(s.equals(”你好”)) System.out.println(true); String s=”你好”;if(equals(s,”你好”)) System.out.println(true); 15String str;System.out.println(str.length());以上语句的处理结果是(A )A、编译报错B、运⾏结果是nullC、运⾏结果为0D、随机值 16、执⾏String [ ] s=new String[10];代码后,下⾯结论正确的是( D)A、s[10]为””B、s[10]为nullC、s[0]未定义D、s.length为10 17、构造器(B )被调⽤。
2017年Java面试笔试题目Java集合框架为Java编程语言的基础,也是Java面试中很重要的一个知识点。
下面CN人才网小编为大家带来的是,希望对大家有所帮助~1.Java集合框架是什么?说出一些集合框架的优点?每种编程语言中都有集合,最初的Java版本包含几种集合类:Vector、Stack、HashTable和Array。
随着集合的广泛使用,Java1.2提出了囊括所有集合接口、实现和算法的集合框架。
在保证线程安全的情况下使用泛型和并发集合类,Java已经经历了很久。
它还包括在Java并发包中,阻塞接口以及它们的实现。
集合框架的部分优点如下:(1)使用核心集合类降低开发成本,而非实现我们自己的集合类。
(2)随着使用经过严格测试的集合框架类,代码质量会得到提高。
(3)通过使用JDK附带的集合类,可以降低代码维护成本。
(4)复用性和可操作性。
2.集合框架中的泛型有什么优点?Java1.5引入了泛型,所有的集合接口和实现都大量地使用它。
泛型允许我们为集合提供一个可以容纳的对象类型,因此,如果你添加其它类型的任何元素,它会在编译时报错。
这避免了在运行时出现ClassCastException,因为你将会在编译时得到报错信息。
泛型也使得代码整洁,我们不需要使用显式转换和instanceOf操作符。
它也给运行时带来好处,因为不会产生类型检查的字节码指令。
3.Java集合框架的基础接口有哪些?Collection为集合层级的根接口。
一个集合代表一组对象,这些对象即为它的元素。
Java平台不提供这个接口任何直接的实现。
Set是一个不能包含重复元素的集合。
这个接口对数学集合抽象进行建模,被用来代表集合,就如一副牌。
List是一个有序集合,可以包含重复元素。
你可以通过它的索引来访问任何元素。
List更像长度动态变换的数组。
Map是一个将key映射到value的对象.一个Map不能包含重复的key:每个key最多只能映射一个value。
java笔试题及答案2017# Java笔试题及答案20171. 题目:请解释Java中的接口和抽象类的区别。
答案: Java中的接口和抽象类都是不能被实例化的抽象类型,但它们之间存在一些关键区别:- 接口:接口可以包含常量(public static final字段),抽象方法,以及默认方法(Java 8引入)。
接口中的所有字段默认都是public static final的,所有方法默认都是public abstract的。
接口可以被多实现,一个类可以实现多个接口。
- 抽象类:抽象类可以包含构造方法,非抽象方法,静态方法,常量。
抽象类中的字段可以是任意访问修饰符。
一个类只能继承一个抽象类。
2. 题目:解释Java中的垃圾回收机制。
答案: Java的垃圾回收机制是一种自动内存管理功能,用于自动回收不再使用的对象所占用的内存。
垃圾回收器主要通过以下步骤工作:- 标记:垃圾回收器遍历所有从根对象可达的对象,标记这些对象为“活动”。
- 清除:垃圾回收器遍历堆内存,清除所有未被标记的对象。
- 压缩:可选步骤,将存活的对象移动到堆的一端,减少内存碎片。
3. 题目:在Java中,如何实现多线程?答案: Java中实现多线程可以通过以下几种方式:- 继承Thread类:创建一个继承自Thread类的子类,并重写run方法。
- 实现Runnable接口:创建一个实现了Runnable接口的类,并将Runnable对象传递给Thread类的构造函数。
- 使用Executor框架:使用Java提供的线程池管理器来管理线程。
4. 题目:请解释Java中的异常处理机制。
答案: Java的异常处理机制包括try、catch、finally和throw关键字:- try:用于定义可能抛出异常的代码块。
- catch:用于捕获try块中抛出的异常,并进行处理。
- finally:无论是否发生异常,finally块中的代码都会被执行,常用于资源清理。
java笔试题大集合及答案# Java笔试题大集合及答案1. Java中接口和抽象类的区别是什么?- 接口和抽象类都是抽象的,不能直接实例化。
- 接口中所有的方法默认是public的,而抽象类可以包含非public的成员。
- 一个类可以实现多个接口,但只能继承一个抽象类。
- 接口中不能包含构造方法,而抽象类可以。
- 接口中的字段默认是public static final的,而抽象类中的字段可以是任意类型。
2. Java中如何实现单例模式?- 单例模式确保一个类只有一个实例,并提供一个全局访问点。
- 可以通过私有化构造方法,提供一个私有静态变量来保存实例,并提供一个公有静态方法来获取实例。
3. Java中集合框架的层次结构是怎样的?- 集合框架分为两大类:单元素集合和复合元素集合。
- 单元素集合包括List、Set和Queue。
- 复合元素集合包括Map。
- 每个接口都有多个实现类,如ArrayList、LinkedList、HashSet、TreeSet、HashMap、TreeMap等。
4. Java中如何实现多线程?- 可以通过继承Thread类并重写run方法来实现。
- 也可以通过实现Runnable接口并重写run方法,然后创建Thread对象来实现。
- Java 5引入了Executor框架,可以更方便地管理线程。
5. Java中异常处理的机制是什么?- Java使用try-catch-finally块来处理异常。
- try块中编写可能抛出异常的代码。
- catch块中编写处理异常的代码。
- finally块中的代码无论是否发生异常都会执行。
6. Java中StringBuffer和StringBuilder的区别是什么?- StringBuffer是线程安全的,而StringBuilder不是。
- StringBuffer的方法是同步的,StringBuilder的方法不是。
- 在单线程环境下,StringBuilder的性能优于StringBuffer。
java考试题库及答案2017年java考试题库及答案为帮助大家更好学习java知识,yjbys店铺为大家分享java考试填空题及答案解析如下:填空题(每空2分,共20分)请将每一个空的正确答案写在答题卡【6】~【15】序号的横线上,答在试卷上不得分。
注意:以命令关键字填空的必须平写完整。
(6)按照Java语言中的命令约定,方法名的起始字母一般要小写,但是【6】方方法例外。
(7)swing中的按钮类是【7】(8)Java语言中的`三目运算符是【8】(9)Java语言输入/输出流中包含字节流、【9】、文件流、对象流及管道流。
(10)在Java语言中,对象流以【10】方式传送和存储。
(11)请将下面程序补充完整Public class PowerCalc{Public static void main(String args[]){Double x=5.0;System.out.println(x+”to the power 4 is ”+power(x,4));System.out.println(“7.5 to the power 5 is”+power(7.5,5));System.out.println(“7.5 to the power 0 is”+power(7.5,0));System.out.println(“1.0 to the power -2 is”+power(10,-2));}Static double【11】(double x,int n){If(n>1)Return x*power(x,n-1);Else if(n<0)Return 1.0/power(x,-n);ElseReturn n==0 ? 1.0:x;}}(12)请将下面的Applet程序补充完整。
Import java.awt.*;Import java.applet.*;Public class Hi【12】{Public void paint(Graphics g){g.drawstring(“Hi”,25,25);}}(13)swing中的组件往往采用MVC结构,MAC指的是Model、View和【13】。
Java代码笔试题及答案大全Java代码笔试题及答案1、运算符优先级问题,下面代码的结果是多少?publicclassTest {publicstaticvoidmain(String[] args){int k = 0;int ret = ++k + k++ + ++k + k;// ret的值为多少System.err.println(ret);}}解答:主要考察++i和i++的区别。
++在前则先自增再赋值运算,++在后则先赋值再自增运算。
因此,结果为8。
2、在Java中,以下代码( A )正确地创建了一个InputStreamReader对象。
A) InuptStreamReader(new FileInputStream(“1.dat”));B) InuptStreamReader(new FileReader(“1.dat”));C) InuptStreamReader(new BufferReader(“1.dat”));D) InuptStreamReader (“1.dat”);3、下面代码的结果是什么?publicclassTest {publicvoidmyMethod(String str) {System.err.println("string");}publicvoidmyMethod(Object obj) {System.err.println("object");}publicstaticvoidmain(String[] args) {Test t = new Test();t.myMethod(null);}}解答:这道题考察重载方法参数具有继承关系时的调用问题,还有对null 的认识。
如果是一般具有继承关系的对象分别作为参数,看对象的引用,如:classA {}classBextendsA {}publicclassTest {publicstaticvoidmain(String[] args) {A b1 = new B();B b2 = new B();get(b1);// Aget(b2);// B}publicstaticvoidget(A a) {System.out.println("A");}publicstaticvoidget(B a) {System.out.println("B");}}这道题中,Object是一切类的父类,具有继承关系,那null是指向什么呢?null是任何引用类型的初始值,String和Object的初始值都是null,但是null会优先匹配引用类型参数为String的方法,因此这道题答案是string。
2017java笔试面试题及参考答案2017java笔试面试题一.选择题(30分)1.下列哪些情况可以终止当前线程的运行?a. 抛出一个异常时。
b. 当该线程调用sleep()方法时。
c. 当创建一个新线程时。
(与当前进程无关)d. 当一个优先级高的线程进入就绪状态时。
2. 下面哪些为构造函数的特性定义a. 在类中声明构造函数时,名称应该与类名相同b. 具有重载特性,可以建立多个相同的名称c. 使用类建立新对象时,会自动执行构造函数,因此在构造函数内设定变量的初值或进行内存分配d. 以上都是3. 关于异常处理机制的叙述哪些正确a. catch部分捕捉到异常情况时,才会执行finally部分(无论是否有毛病,都执行)b. 当try区段的程序发生异常时,才会执行catch区段的程序c. 不论程序是否发生错误及捕捉到异常情况,都会执行finally部分d. 以上都是4. 下列关于接口的叙述中哪些是正确的a. 接口中的数据必须设定初值(就是接口中的常量)b. 接口中的方法都是抽象方法c. 接口可以声明引用d. 以上都正确5. Java语言中,方法的重写(Overriding)和重载(Overloading)是多态性的不同表现。
下边哪些说法是对的?A. 重写是父类与子类之间多态性的一种表现。
B. 重写是一个类中多态性的一种表现。
C. 重载是一个类中多态性的一种表现。
D. 重载是父类与子类之间多态性的一种表现。
6.在Struts应用的视图中包含哪些组件?A. JSPB. ServletC. ActionServletD. ActionE. 代表业务逻辑或业务数据的JavaBeanF. EJBG. 客户化标签7. struts框架中,关于FormBean,下列哪些说法是正确的:A FormBean是一种数据bean,主要用来封装表单提交上来的数据,并把这些数据传递给ActionB 在FormBean中可以对页面上传递来的参数进行一下格式上的验证,这种验证是一种客户端的验证C 用户每次提交表单,都会产生一个新的FormBean实例D 动态FormBean不能进行验证操作8哪些方法可以进行servlet的调试?()A、使用打印语句;在桌面计算机上运行服务器B、使用Apache Log4JC、使用IDE集成的调试器D、直接查看HTML源码????E、返回错误页面给客户9、下面关于servlet的功用说法正确的有哪些?()A、读取客户程序发送来的显式数据B、读取客户程序发送来的隐式数据C、生成相应的结果D、发送显式的数据给客户程序E、发送隐式的数据给客户程序10、下面关于session的用法哪些是错误的?(A、HttpSession session = new HttpSession();request.getSession();B、String haha =(String) session.getParameter(Attribute)( haha );C、session.removeAttribute( haha );D、session. setAttribute( haha ,值);11、关于说法正确的有哪些?()A、URL的输出在请求时被插入到JSP页面中B、不能含有影响整个页面的JSP内容C、被包含文件改变后不需更改使用它的页面D、被包含文件更改后,需要手动地更新使用它的页面(不需要手动更新)12、关于bean的说法正确的有哪些?()A、具备一个零参数(空)的构造函数(不是必须的)B、不应该有公开的实例变量(字段)C、所有的属性都必须通过getXxx和setXxx方法来访问D、布尔型的属性使用isXxx,而非getXxx13、下面关于MVC说法错误的有哪些?()A、必须使用复杂的框架B、使用内建的RequestDispatcher能够很好地实现MVCC、当其中一个组件发生变化的时候,MVC影响整个系统的设计D、我们可以用MVC来处理单个请求14、下面的标签中哪些是JSTL标签?()15、struts框架,错误的是,下面那些说法正确?A Struts中无法完成上传功能B Struts框架基于MVC模式C Struts框架容易引起流程复杂、结构不清晰等问题(清晰)D Struts可以有效地降低项目的类文件数目二、填空题( 5分)1、调用函数MOD(123,10)返回值为___。
java测试题2017及答案1. Java中的“==”和“equals()”方法有何不同?- “==”用于比较两个基本数据类型的值是否相等,以及两个引用是否指向同一对象。
- “equals()”是一个方法,用于比较两个对象的内容是否相等。
它是Object类的方法,可以被所有Java对象继承。
如果需要比较两个对象的内容是否相等,应该重写equals()方法。
2. Java中如何实现多态?- 多态可以通过继承和接口实现。
当子类重写父类的方法时,可以表现出多态性。
此外,通过接口也可以实现多态,当多个类实现同一个接口时,它们可以被同一个接口类型的引用所指向,从而表现出多态性。
3. Java中String类是可变的还是不可变的?- String类是不可变的。
一旦String对象被创建,它的内容就不能被改变。
任何对String对象的修改都会产生一个新的String对象。
4. Java中的垃圾回收机制是如何工作的?- Java的垃圾回收机制主要依赖于垃圾收集器(Garbage Collector, GC)。
当对象不再被任何引用指向时,它们就成为了垃圾收集器的回收对象。
垃圾收集器会定期检查内存,识别并回收这些不再使用的对象,以释放内存空间。
5. Java中如何实现线程同步?- 线程同步可以通过synchronized关键字实现。
它可以用于方法或者代码块,确保同一时间只有一个线程可以执行特定的代码段。
此外,还可以使用Lock接口和ReentrantLock类来实现更灵活的线程同步。
6. Java中异常处理的机制是什么?- Java异常处理机制基于try-catch-finally语句。
try块用于包围可能抛出异常的代码,catch块用于捕获并处理异常,finally块用于执行清理工作,无论是否发生异常都会执行。
7. Java中集合框架的主要接口有哪些?- Java集合框架的主要接口包括List、Set和Map。
List接口允许有序的集合,可以包含重复元素;Set接口不允许重复元素;Map接口存储键值对,不允许重复的键。
2017年4月高等教育自学考试全国统一命题考试Java语言程序设计(一)试卷课程代码 04747一、单项选择题(本大题共10小题,每小题1分,共10分)1. 在下列供选的字符串中,不能作为Java整型常量的是A.052B.0x3BEHC.6389D.0x3fedL【答案】B【解析】该题考查Java语言基础知识中基本数据类型中的整数类型。
Java语言中整型常量有十进制、八进制和十六进制三种写法。
A项以数字符0开头,是八进制写法;C项是十进制写法;D项以0x开头,后随字符和英文字母A到F,是十六进制写法,最后的字母L表示该整型为长整型;C项错在最后的字母H,十六进制表示时后随字符和英文字母A到F。
所以C项不能作为Java整型常量。
【知识点】整数类型的四种表示形式2. 在以下供选的关键字中,能用于定义常值变量的是A.finalB.staticC.protectedD.super【答案】A【解析】该题考查Java语言基础知识中的关键字。
Java语言中的关键字被赋予特定的意义,用于表示程序结构、定义和修饰等。
每个关键字在程序中出现有特定位置和使用方法的要求。
B项用于修饰类变量或类方法;C项为访问权限中受保护访问权限关键字,只限子类或者同一包中的类的方法能访问;D项。
A项的意义是最终的,其意思是“不能改变”,修饰变量时,声明该变量的值不能被改变。
所以A项能用于定义常值变量。
【知识点】常用关键字的使用3. 下列Java语句中,不正确的是A.float e=0.0d;B.char c,d=‘a’;C.int $ e,a,b=10;D.double e=0.0f;【答案】A【解析】该题考查Java语言基础知识中基本数据类型间转换关系。
Java语言中的基本数据类型转换分为自动转换和不兼容类型的强制转换两种:当满足两种类型是兼容的和目的类型数的范围比来源类型的大这两个条件时,发生自动转换。
A项是定义单精度实型(float)变量(e)且赋值(0.0d),但是0.0d是双精度实型值,不满足目的类型数的范围比来源类型的大这个条件,在赋值时出现类型不匹配错误,因此是不正确的;B项定义了两个字符型变量(c和d)并对d赋初始值(’a’);C项定义了三个整型变量($e、a和b)并对b赋初始值10;D项定义了一个双精度实型变量(e)并对e赋单精度初始值(0.0f),满足两种类型是兼容的和目的类型数的范围比来源类型的大这两个条件,会自动转换。
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考试测试试卷人在逆境里比在顾境里更能坚强不屈,遭厄运时比交好运时更容易保全身心。
以下是店铺为大家搜索整理2017年java考试测试试卷,希望能给大家带来帮助!一、选择题(每小题2分,共70分)下列各题A)、B)、C)、D)四个选项中,只有一个选项是正确的。
请将正确选项填涂在答题卡相应位置上,答在试卷上不得分。
(1)下列叙述中正确的是A)对长度为n的有序链表进行查找,最坏情况下需要的比较次数为nB)对长度为n的有序链表进行对分查找,最坏情况下需要的比较次数为(n/2)C)对长度为n的有序链表进行对分查找,最坏情况下需要的比较次数为(log2n)D)对长度为n的有序链表进行对分查找,最坏情况下需要的比较次数为(n log2n)(2)算法的时间复杂度是指A)算法的执行时间B)算法所处理的数据量C)算法程序中的语句或指令条数D)算法在执行过程中所需要的基本运算次数(3)软件按功能可以分为:应用软件、系统软件和支撑软件(或工具软件)。
下面属于系统软件的是A)编辑软件B)操作系统C)教务管理系统D)浏览器(4)软件(程序)调试的任务是A)诊断和改正程序中的错误B)尽可能多地发现程序中的错误C)发现并改正程序中的所有错误D)确定程序中错误的性质(5)数据流程图(DFD图)是A)软件概要设计的工具B)软件详细设计的工具C)结构化方法的需求分析工具D)面向对象方法的需求分析工具(6)软件生命周期可分为定义阶段,开发阶段和维护阶段。
详细设计属于A)定义阶段B)开发阶段C)维护阶段D)上述三个阶段(7)数据库管理系统中负责数据模式定义的语言是A)数据定义语言B)数据管理语言C)数据操纵语言D)数据控制语言(8)在学生管理的关系数据库中,存取一个学生信息的数据单位是A)文件B)数据库C)字段D)记录(9)数据库设计中,用E-R图来描述信息结构但不涉及信息在计算机中的表示,它属于数据库设计的A)需求分析阶段B)逻辑设计阶段C)概念设计阶段D)物理设计阶段(10)有两个关系R和T如下:则由关系R得到关系T的操作是A)选择B)投影C)交D)并(11)Java中定义常量的保留字是A)constB)finalC)finallyD)native(12)下列有关Java布尔类型的`描述中,正确的是A)一种基本的数据类型,它的类型名称为booleanB)用int表示类型C)其值可以赋给int类型的变量D)有两个值,1代表真,0代表假(13)Java中所有类的父类是A)FatherB)LangC)ExceptionD)Object(14)下列程序段的输出结果是int data=0;char k='a',p='f';data=p-k;system.out.println(data);A)0B)aC)fD)5(15)下列数中为八进制的是A)27B)0x25C)026D)028(16)下列方法中,不属于Throwable类的方法是A)printMessageB)getMessageC)toStringD)fillStackTrace(17)下列程序的输出结果是public class Test{public static void main(String[] args){int [] array={2,4,6,8,10};int size=6;int result=-1;try{for{int i=0;iif(array[i]==20) result=i;}catch(ArithmeticException e){System.out.println("Catch---1");catch(ArrayIndexOutOfBoundsException e){ System.out.println("Catch---2");catch(Exception e){System.out.println("Catch---3");}}A)Catch---1B)Catch---2C)Catch---3D)以上都不对(18)下列包中,包含JOptionPane类的是A)javax.swingB)ngC)java.utilD)java.applet(19)下列选项中,与成员变量共同构成一个类的是A)关键字B)方法C)运算符D)表达式(20)下列程序的功能是将一个整数数组写入二进制文件。
java笔试题目及答案# Java笔试题目及答案题目一:Java基本数据类型问题: Java中的基本数据类型有哪些?请列举并说明它们的取值范围。
答案:Java中的基本数据类型包括以下几种:1. byte - 8位有符号整数,取值范围从 -128 到 127。
2. short - 16位有符号整数,取值范围从 -32,768 到 32,767。
3. int - 32位有符号整数,默认类型,取值范围从 -2^31 到 2^31-1。
4. long - 64位有符号整数,取值范围从 -2^63 到 2^63-1。
在数值后加上后缀 L 或 l 表示。
5. float - 32位单精度浮点数,用于存储小数。
6. double - 64位双精度浮点数,默认的浮点数类型。
7. char - 16位Unicode字符,可以存储任何字符。
8. boolean - 只有两个可能的值:true 和 false。
题目二:Java集合框架问题:请简述Java集合框架中的List和Set的区别。
答案:List和Set都是Java集合框架中的一部分,但它们有以下主要区别:- List 允许存储重复的元素,并且元素有序,即元素插入的顺序就是元素的顺序。
- Set 不允许存储重复的元素,并且元素无序,即元素的存储顺序不是按照插入顺序。
常见的List实现有ArrayList、LinkedList等,而Set的常见实现有HashSet、TreeSet等。
题目三:Java多线程问题:什么是线程安全?Java中如何实现线程安全?答案:线程安全指的是当多个线程访问某个类或者对象时,这个类或者对象能够正确地处理来自多个线程的请求,不会出现数据不一致的问题。
在Java中实现线程安全的方法有:1. 使用synchronized关键字:可以修饰方法或者代码块,确保同一时间只有一个线程可以执行该段代码。
2. 使用volatile关键字:确保变量的修改对所有线程立即可见。
Java笔试题及答案2017年Java笔试题及答案Java是一种可以撰写跨平台应用程序的面向对象的程序设计语言。
下面是店铺整理的关于Java笔试题及答案,欢迎参考!Java基础知识笔试题及答案1.Java中提供了名为()的包装类来包装原始字符串类型。
A.IntegerB.CharC.DoubleD.String�0�2答案:Dng包的()方法比较两个对象是否相等,相等返回true。
A.toString()B.equals()pare()D.以上所有选项都不正确答案:B3.使用()方法可以获得Calendar类的实例。
A.get()B.equals()C.getTime()D.getInstance()答案:D4.下面的集合中,()不可以存储重复元素。
A.SetB.CollectionC.MapD.List答案:C5.关于Map和List,下面说法正确的是(�0�2�0�2)。
A.Map继承ListB.List中可以保存Map或ListC.Map和List只能保存从数据库中取出的数据D.Map的value可以是List或Map答案:D6.给定如下Java代码,编译运行的结果是()。
import�0�2java.util.*;public�0�2class�0�2Test�0�2{public�0�2static�0�2void�0�2main(String[]�0�2args)�0�2{LinkedList�0�2list=new�0�2LinkedList();lis t.add(“A”);list.add(2,”B”);String�0�2s=(String)list.get(1);System.out.println(s);}}A.编译时发生错误B.运行时引发异常C.正确运行,输出:AD.正确运行,输出:B答案:BJava笔试题解答1. 下面哪些是Thread类的方法()A start()B run()C exit()D getPriority()答案:ABD解析:看Java API docs吧:/javase/7/docs/api/,exit()是System类的方法,如System.exit(0)。
2017年10月高等教育自学考试全国统一命题考试Java语言程序设计(一)试卷课程代码 04747一、单项选择题:本大题共10小题,每小题l分,共10分。
1.编译Java应用程序源程序会产生字节码文件,字节码文件的扩展名为()A..javaB..classC..htmlD..exe【答案】B【解析】java文件通过jvm虚拟机编译后会生成二进制码,显示的文件格式就是“.class”.【知识点】java应用程序和小应用程序2.表达式-1>>1的值是()A.232-1B.-1C.216-1D.2147483647【答案】B【解析】>>是算术右移位运算符,按二进制形式把所有的数字向右移动对应位数,低位移出(舍弃),高位的空位补符号位,即正数补零,负数补1. -1java表示就是32个1,右移1位后还是-1.【知识点】移位运算3.为类C定义一个int类型的变量x,使得只有同类和同包的其它类能使用代码C.x就可引用它,则定义x的形式为()A.static int x;B.public int x;C.protected static int x;D.public static int x;【答案】A【解析】用关键字static修饰的是类变量,静态变量被所有的对象所共享,都可以引用它。
【知识点】类变量4.设有字符串变量String s1="abc", s2=new String("abc"),则以下表达式的值为true 的是()A.pareToIgnoreCase(s2)B.pareTo(s2)C.s1==s2D.s1.equals(s2)【答案】D【解析】因为“==”指的是两个对象的引用相同,而“equals()”指的是两个对象的值相等。
【知识点】字符串变量5.在以下Swing的类中,属于容器的是()A.JDialogB.JButtonC.JTextAreaD.JList【答案】A【解析】swing顶层容器有JFrame,JDialog,JApplet【知识点】swing组件6.在以下叙述中,属于CardLayout布局特点之一的是()A.多个组件从上到下排列B.容器只能放置一个组件C.容器被分成网格状D.多个组件拥有同一个显示空间【答案】D【解析】CardLayout布局可以容纳多个组件,但多个组件拥有同一个显示空间,某一时刻只能显示一个组件。
⼀、选择题(每⼩题1分,共40⼩题,共40分) 1.数据的存储结构是指( )。
A.存储在外存中的数据 B.数据所占的存储空间量 c.数据在计算机中的顺序存储⽅式 D.数据的逻辑结构在计算机中的表⽰ 2.对于长度为n的线性表,在最坏情况下,下列各排序法所对应的⽐较次数中正确的是( )。
A.冒泡排序n/Z B.冒泡排序为n C.快速排序为n D.快速排序为n(n⼀1)/z 3.栈和队列的共同点是( )。
A.都是先进先出 B.都是先进后出 C.只允许在端点处插⼊和删除元素 D.没有共同特点 4.有下列⼆叉树,对此⼆叉树中序遍历的结果为( )。
A.ABCEDF B.ABCDEF C.ECBDFA D.ECFDBA 5.对建⽴良好的程序设计风格,下列描述中正确的是( )。
A.程序应该简单、清晰、可读性好 B.符号名的命名只需要符合语法 C.充分考虑程序的执⾏效率 D.程序的注释可有可⽆ 6.下列叙述中正确的是( )。
A.在⾯向对象的程序设计中,各个对象之间具有密切的关系 B.在⾯向对象的程序设计中,各个对象都是公⽤的 C.在⾯向对象的程序设计中,各个对象之间相对独⽴,相互依赖性⼩ D.上述3种说法都不对 7.为了提⾼软件模块的独⽴性,模块之间是( )。
A.控制耦合 B.公共耦合 C.内容耦合 D.⾼内聚低耦合 8.数据独⽴性是数据库技术的重要特点之⼀。
所谓数据独⽴性是指( )。
A.数据与程序独⽴存放 B.不同的数据被存放在不同的⽂件中.. C.不同的数据只能被对应的应⽤程序所使⽤ D.以上三种说法都不对 9.下列描述中正确的是( )。
A.软件⼯程只是解决软件项⽬的管理问题 B.软件⼯程主要解决软件产品的⽣产率问题 C.软件⼯程的主要思想是强调在软件开发过程中需要应⽤⼯程化原则 D.软件⼯程只是解决软件开发过程中的技术问题 10.对关系S和R进⾏集合运算,结果中既包含S中的所有元组也包含R中的所有元组,这样的集合运算称为( )。
Java程序员面试笔试试题2017年Java程序员面试笔试试题Java能够自动处理对象的引用和间接引用,实现自动的无用单元收集,使用户不必为存储管理问题烦恼,能更多的时间和精力花在研发上。
yjbys店铺整理的Java程序员面试笔试试题,欢迎大家参考!1. 面向对象编程的三大特性是什么,请简要阐述2. String 和StringBuffer的区别3. 说出ArrayList,Vector, LinkedList的存储性能和特性4. Collection 和 Collections的区别5. HashMap和Hashtable的区别6. final, finally, finalize的区别7. Overload和Override的区别。
Overloaded的方法是否可以改变返回值的类型?8. error和exception有什么区别?9. abstract class和interface有什么区别?10. List, Set, Map是否继承自Collection接口11. swtich是否能作用在byte上,是否能作用在long上,是否能作用在String12. char型变量中能不能存贮一个中文汉字?为什么?13. 多线程有几种实现方法,都是什么?哪一种方式比较优秀?同步有几种实现方法,都是什么?14. Java中有几种类型的流?JDK为每种类型的流提供了一些抽象类以供继承,请说出他们分别是哪些类Struts框架1. Struts框架的整体运行流程2. ActionServlet在Struts框架中的总体作用功能是什么3. Struts框架的后缀名一般为.do,后缀后能不能更改,如果能更改的话,如何4. 如何在Struts-config.xml中配置数据源以及获取数据源5. Struts-config.xml文件action配置中的attribute属性和name 属性有什么区别6. Struts中的Action是不是线程安全的?如果不是有什么方式可以保证Action的线程安全?如果是,说明原因7. Action的Execute方法有几个参数,这几个参数的具体作用是什么8. Action的Execute方法的返回值是什么类型,有几种方式可以返回此类型9. ActionFrom中对于错误消息的存取是如何存取的,页面上面是如何显示ActionFrom中存放的出错消息10. 普通的Action对于消息的存取是如何实现的,页面上面是如何显示Action中存放的消息11. 普通的ActionForm和动态的ActionForm有什么区别,在动态的ActionForm中如何设定一个日期类型的属性12. 动态ActionForm是以什么方式存取表单控件的值的。
2017年java笔试题精选汇编一.选择题(共50题,每题2分,共100分。
多选题选不全或选错都不得分。
) 1.以下属于面向对象的特征的是(C,D)。
(两项)A) 重载B) 重写C) 封装D) 继承2.以下代码运行输出是(C)public class Person{private String name=”Person”;int age=0;}public class Child extends Person{public String grade;public static void main(String[] args){Person p = new Child();System.out.println();}}A) 输出:PersonB) 没有输出C) 编译出错D) 运行出错3.在使用super 和this关键字时,以下描述正确的是(A)A) 在子类构造方法中使用super()显示调用父类的构造方法,super()必须写在子类构造方法的第一行,否则编译不通过B) super()和this()不一定要放在构造方法内第一行C) this()和super()可以同时出现在一个构造函数中D) this()和super()可以在static环境中使用,包括static方法和static语句块4.以下对封装的描述正确的是(D)A) 只能对一个类中的方法进行封装,不能对属性进行封装B) 如果子类继承了父类,对于父类中进行封装的方法,子类仍然可以直接调用C) 封装的意义不大,因此在编码时尽量不要使用D) 封装的主要作用在于对外隐藏内部实现细节,增强程序的安全性5.以下对继承的描述错误的是(A)A) Java中的继承允许一个子类继承多个父类B) 父类更具有通用性,子类更具体C) Java中的继承存在着传递性D) 当实例化子类时会递归调用父类中的构造方法6.以下程序的运行结果是(D)class Person{public Person(){System.out.println(“this is a Person”); }}public class Teacher extends Person{ private String name=”tom”;public Teacher(){System.out.println(“this is a teacher”); super();}public static void main(String[] args){ Teacher teacher = new Teacher(); System.out.println();}}A) this is a Personthis is a teachertomB) this is a teacherthis is a PersontomC) 运行出错D) 编译有两处错误7.以下说法错误的是()A) super.方法()可以调用父类的所有非私有方法B) super()可以调用父类的所有非私有构造函数C) super.属性可以调用父类的所有非私有属性D) this和super关键字可以出现在同一个构造函数中8.以下关于final关键字说法错误的是(A,C)(两项)A) final是java中的修饰符,可以修饰类、接口、抽象类、方法和属性B) final修饰的类肯定不能被继承C) final修饰的方法不能被重载D) final修饰的变量不允许被再次赋值9.访问修饰符作用范围由大到小是(D)A) private-default-protected-publicB) public-default-protected-privateC) private-protected-default-publicD) public-protected-default-private10.以下(D)不是Object类的方法A) clone()B) finalize()C) toString()D) hasNext()11.多态的表现形式有(A)A) 重写B) 抽象C) 继承D) 封装12.以下对重载描述错误的是(B)A) 方法重载只能发生在一个类的内部B) 构造方法不能重载C) 重载要求方法名相同,参数列表不同D) 方法的返回值类型不是区分方法重载的条件13.以下(D)添加到ComputerBook中不会出错class Book{protected int getPrice(){return 30;}}public class ComputerBook extends Book{}A) protected float getPrice(){}B) protected int getPrice(int page){}C) int getPrice(){}D) public int getPrice(){return 10;}14.以下对抽象类的描述正确的是(C)A) 抽象类没有构造方法B) 抽象类必须提供抽象方法C) 有抽象方法的类一定是抽象类D) 抽象类可以通过new关键字直接实例化15.以下对接口描述错误的有(D)A) 接口没有提供构造方法B) 接口中的方法默认使用public、abstract修饰C) 接口中的属性默认使用public、static、final修饰D) 接口不允许多继承16.以下代码,描述正确的有(A)interface IDemo{public static final String name;1void print();2public void getInfo();3}abstract class Person implements IDemo{4 public void print(){}}A) 第1行错误,没有给变量赋值B) 第2行错误,方法没有修饰符C) 第4行错误,没有实现接口的全部方法D) 第3行错误,没有方法的实现17.接口和抽象类描述正确的有(B,C)(两项)A) 抽象类没有构造函数B) 接口没有构造函数C) 抽象类不允许多继承D) 接口中的方法可以有方法体18.以下描述错误的有(C)A) abstract 可以修饰类、接口、方法B) abstract修饰的类主要用于被继承C) abstract 可以修饰变量D) abstract修饰的类,其子类也可以是abstract修饰的19.以下描述正确的有(B)A) 方法的重写应用在一个类的内部B) 方法的重载与返回值类型无关C) 构造方法不能重载D) 构造方法可以重写20.以下程序运行结果是(A)public class Test extends Father{private String name=”test”;public static void main(String[] args){Test test = new Test();System.out.println(test.getName());}}class Father{private String name=”father”;public String getName() {return name;}A) fatherB) testC) 编译出错D) 运行出错,无输出21.以下对异常的描述不正确的有(C)A) 异常分为Error和ExceptionB) Throwable是所有异常类的父类C) Exception是所有异常类父类D) Exception包括RuntimeException和RuntimeException之外的异常22.在try-catch-finally语句块中,以下可以单独与finally一起使用的是(B)A) catchB) tryC) throwsD) throw23.下面代码运行结果是(B)public class Demo{public int add(int a,int b){return a+b;}catch(Exception e){System.out.println(“catch 语句块”);}finally{System.out.println(“finally 语句块”);}return 0;}public static void main(String[] args){ Demo demo = new Demo();System.out.println(“和是:”+demo.add(9,34)); }}A) 编译异常B) finally语句块和是:43C) 和是:43 finally语句块D) catch语句块和是:4324.以下描述不正确的有(D)A) try块不可以省略B) 可以使用多重catch块C) finally块可以省略D) catch块和finally块可以同时省略25.以下对自定义异常描述正确的是(C)A) 自定义异常必须继承ExceptionB) 自定义异常可以继承自ErrorC) 自定义异常可以更加明确定位异常出错的位置和给出详细出错信息D) 程序中已经提供了丰富的异常类,使用自定义异常没有意义26.以下程序运行结果是(D)public class Test {public int div(int a, int b) {try {return a / b;}catch(Exception e){System.out.println(“Exception”);}catch(NullPointerException e){System.out.println(“ArithmeticException”);}catch (ArithmeticException e) {System.out.println(“ArithmeticException”);} finally {System.out.println(“finally”);}return 0;}public static void main(String[] args) {Test demo = new Test();System.out.println(“商是:” + demo.div(9, 0));}}A) Exception finally 商是:0B) ArithmeticException finally 商是:0C) finally商是:0D) 编译报错27. 以下对TCP和UDP描述正确的是(D)A) TCP不能提供数据的可靠性B) UDP能够保证数据库的可靠性C) TCP数据传输效率高于UDPD) UDP数据传输效率高于TCP28. 在Java中,下面对于构造函数的描述正确的是(D)。
(选择一项)A) 类必须显示定义构造函数B) 构造函数的返回类型是voidC) 构造函数和类有相同的名称,并且不能带任何参数D) 一个类可以定义多个构造函数29. 根据下面的代码,String s = null;会抛出NullPointerException异常的有(A,C)。