Java基础教程考试题目
- 格式:docx
- 大小:39.35 KB
- 文档页数:28
java基础试题及答案一、选择题(每题2分,共20分)1. Java中,以下哪个关键字用于定义一个类?A. classB. interfaceC. structD. enum答案:A2. 下列哪个选项是Java中的基本数据类型?A. StringB. intC. ArrayListD. Object答案:B3. 在Java中,哪个修饰符用于声明一个成员变量为类的私有成员?A. privateB. publicC. protectedD. static答案:A4. Java中,哪个关键字用于捕获异常?A. tryB. catchC. finallyD. throw答案:B5. 在Java中,哪个关键字用于定义一个接口?A. classB. interfaceC. abstractD. enum答案:B6. 下列哪个选项是Java集合框架中的一部分?A. StringB. ArrayListC. FileD. Thread答案:B7. 在Java中,哪个关键字用于定义一个方法?A. functionB. methodC. defD. void答案:D8. Java中,哪个关键字用于定义一个抽象方法?A. abstractB. finalC. staticD. native答案:A9. 在Java中,哪个关键字用于定义一个内部类?A. innerB. nestedC. innerclassD. class答案:D10. Java中,哪个关键字用于定义一个静态方法?A. staticB. dynamicC. finalD. abstract答案:A二、填空题(每题3分,共15分)1. Java中,用于定义一个类的关键字是______。
答案:class2. Java程序的入口点是______方法。
答案:main3. 在Java中,______关键字用于声明一个变量为常量。
答案:final4. Java中,______关键字用于定义一个方法为静态的。
班级:姓名:学号:《JAVA程序设计》试题1一、单项选择填空(每小题2分,共50分)1.下列有关Java语言的叙述中,正确的是(B)A、Java是不区分大小写的B、源文件名与public权限的类名必须相同C、源文件名其扩展名为.jarD、源文件中public类的数目不限2.在Java中,负责对字节代码解释执行的是(B)。
字节就是class 文件A、垃圾回收器B、虚拟机C、编译器D、多线程机制3.在Java程序设计中,由Java编译器默认导入的包是(D)A、java.appletB、java.awtC、java.util 输入语言D、ng4.编译Java application源程序文件将产生相应的字节码文件,这些字节文件的扩展名为(B)A、.javaB、.classC、.htmlD、.exe5.在Java中,用package语句定义一个包时,该包的层次结构即是(b)A、与文件的结构相同B、与文件目录的层次相同C、与文件类型相同D、与文件大小相同6.有时在程序设计中采用分治算法而选择递归,“递归”的基本思想是(c)A、“让别人反复调用自己”B、“自己反复调用别人”C、“自己反复调用自己”D、以上说法都不对7.main方法是Java Application程序执行的入口,含有main方法的类是主类,且main方法的定义是唯一的,以下哪项是正确的(b)A、public static void main()B、public static void main(String args[ ])C、public static int main(String arg[])D、public void main(String arg[])8.按照Java的标识符的行业命名规范,下列分别表示一个类和一个方法的标识符比较合适的是(b)A、Helloworld,GetSwimmingScoreB、HelloWorld,getSwimmingScoreC、helloworld,getswimmingscoreD、helloWorld,Getswimmingscore9.以下程序的运行结果为(d)public class IfTest{public static void main(String args[]){int x=3;{int y=1;}if(x==y)System.out.println(“equal”);elseSystem.out.println(“Not Equal”);}}A、Not equalB、EqualC、无输出D、编译出错,找不到y10.下列说法不正确的是(c)A、IOException必须被捕获或抛出B、java语言不自动初始化变量的值C、java语言不允许同时继承一个类并实现一个接口D、java语言会自动回收内存中的垃圾11.在Java中,所有类的根类是(a)A、ng.ObjectB、ng.ClassC、java.applet.AppletD、java.swing.Jframe12.下列方法中可以用来创建一个新线程的是(b)A、实现ng.Runnable接口并重写start()方法B、实现ng.Runnable接口并重写run()方法C、实现ng.Thread接口并重写run()方法D、实现ng.Thread类并重写start()方法13.启动Applet小程序时,即调用类似于应用程序main方法的入口方法(b)A、stop()B、init()C、start()D、destroy()14.Java的字符类型采用的是Unicode编码方案,每个Unicode码占用____个比特位。
java基础试题一、选择题1. Java中用于创建新对象的关键字是()。
A. newB. thisC. classD. public2. 下列哪个选项是Java语言的特性?A. 多态B. 静态类型C. 自动内存管理D. 所有以上选项3. 在Java中,如果需要导入多个包,可以使用以下哪种方式?A. 每行导入一个包B. 用逗号分隔多个包C. 用分号分隔多个包D. 用括号包含多个包4. 下列关于Java异常处理的描述,哪项是正确的?A. try块可以单独存在,不一定要伴随catch块B. catch块可以捕获多种类型的异常C. finally块必须跟在catch块之后D. throw语句用于声明自定义异常5. 在Java中,下列哪个类是所有其他类的父类?A. ObjectB. SystemC. StringD. Math二、填空题1. 在Java中,每个类可以定义一个特殊的方法,该方法的名称是________,当创建类的新对象时会自动调用。
2. 如果需要在Java程序中处理用户输入,可以使用________类。
3. Java中的垃圾回收机制是自动的,这意味着程序员不需要显式地________内存。
4. 为了在Java中实现多线程编程,可以使用关键字________来定义一个线程。
5. 在Java中,所有的类都是定义在某个________文件中。
三、判断题1. Java中的接口可以包含具体的方法实现。
()2. 所有的Java类都是继承自ng.Object类的。
()3. 在Java中,如果一个类没有显式地指定构造方法,编译器会提供一个默认的无参构造方法。
()4. 所有的Java异常都是继承自ng.Exception类的。
()5. 在Java中,final关键字可以用来修饰方法,使其不能被重写。
()四、简答题1. 请简述Java中的封装性,并给出一个示例。
2. 解释什么是Java的继承,以及它的好处。
3. 请描述Java中的多态性,并给出一个实际应用的例子。
java基础考试题目及答案一、选择题(每题2分,共20分)1. Java中用于声明变量的关键字是什么?A. varB. letC. constD. class答案:A2. 下列哪个选项是Java中的保留字?A. finalB. publicC. privateD. all of the above答案:D3. Java中哪个类是所有类的根类?A. ObjectB. StringC. SystemD. Thread答案:A4. 在Java中,下列哪个数据类型不是基本数据类型?A. intB. doubleC. StringD. boolean5. Java中,下列哪个关键字用于实现继承?A. extendsB. implementsC. interfaceD. abstract答案:A6. Java中,下列哪个关键字用于实现多态?A. extendsB. implementsC. interfaceD. abstract答案:A7. 在Java中,下列哪个关键字用于声明一个方法?A. classB. methodC. functionD. void答案:D8. 下列哪个选项是Java中的异常处理关键字?A. tryB. catchC. throwD. all of the above答案:D9. Java中,下列哪个关键字用于声明一个接口?B. interfaceC. abstractD. final答案:B10. 在Java中,下列哪个关键字用于声明一个枚举?A. enumB. listC. setD. map答案:A二、填空题(每题2分,共20分)1. Java是一种_________语言,它支持_________编程。
答案:面向对象;多线程2. Java程序的执行是由_________类开始的。
答案:main3. 在Java中,一个类可以继承另一个类的属性和方法,这体现了_________的概念。
java基础教程考试复习题Java基础教程考试复习题一、选择题1. Java是一种:A. 编译型语言B. 解释型语言C. 汇编语言D. 标记语言答案:B2. 下列哪个是Java的基本数据类型?A. StringB. intC. ArrayListD. Object答案:B3. Java中的main方法是程序的入口点,它的正确声明是:A. public static void main(String args[])B. public void main(String args)C. private static void main(String[] args)D. public static void main(String args)答案:A4. 在Java中,哪个关键字用于定义类?A. classB. interfaceC. enumD. struct答案:A5. 以下哪个是Java集合框架中的接口?A. ListB. ArrayListC. LinkedListD. Vector答案:A二、填空题6. Java是一种_______面向对象的编程语言。
答案:完全7. Java的三大特性是:封装、继承和_______。
答案:多态8. 在Java中,_______关键字用于定义一个方法,该方法没有返回值。
答案:void9. 一个Java程序可以包含多个类,但只能有一个_______类。
答案:公共(public)10. Java中的异常处理是通过_______和_______两个关键字实现的。
答案:try,catch三、简答题11. 简述Java的垃圾回收机制。
答案:Java的垃圾回收机制是一种自动内存管理技术,用于回收不再被程序引用的对象所占用的内存。
垃圾回收器定期运行,寻找那些不再可达的对象,并释放它们占用的内存资源。
12. 请解释Java中的接口和抽象类的区别。
答案:接口定义了一组方法规范,但不实现这些方法。
java基础笔试题(答案已整理) Java基础试题一、选择题(1*30=30)1.Java提供哪几种运算符?(多选)A)算术运算符 B)位运算符 C)关系运算符 D)逻辑运算符 E)条件运算符ng包的哪个方法比较两个对象是否相等返回true?(b)A: toString() B: equals() C: compare() D: 以上都不正确3.下列对Java的变量与函数说法正确的是?(多选)A)变量是用来保存数据的 B)变量是用来实现操作过程的 C)函数是用来实现操作过程的 D)函数是用来保存数据的E)函数的参数是数据的入口4.已知:int[] a = new int[100];在下列给出的数组元素中,非法的是?(d)A: a[0] B: a[1] C: a[99] D: a[100]5.在Java中,一个类可同时定义许多同名的方法,在这些方法的形式参数个数、类型或顺序各不相同,传值也可以各不相同。
这种面向对象程序的特性称为?(c)A: 隐藏 B: 覆盖 C: 重载 D: Java不支持此特性6.()是一组常量和抽象方法的集合。
(d)A: 实例 B: 类 C: 包 D: 接口7.下面关于数组说法正确的是?(多选)A)一维数组实质上是相同类型变量的列表 B)创建一个数组首先定义数组变量所需的类型 C)char c[]=new char[26];可声明一个含有26个元素的char型数组 D)当为一个多维数组的时候分配内存时,仅需要为第一维指定内存,然后再分配其他维的存 E)int twain[][] = new int[4][5];可声明一个二维数组8.Java源文件和编译后的文件扩展名分别为?(b)A:。
class和.java B:。
java和.class C:。
class和.class D:。
java和.java9.设x=5,则y=x--和y=--x的结果,使y分别为?(c)A: 5,5 B: 5,6 C: 5,4 D: 4,410.若x是float类变量,x=10/4,则x的值是?(b)A: 2 B: 2.0 C: 2,5 D: 编译错误11.下面方法中,用于调度线程使其运行的是?(多选)A。
Java语言基础测试题及答案一、选择题1. Java程序的入口点是哪个方法?A. main()B. static()C. start()D. run()2. 下面哪个操作符用于取模?A. %B. /C.D. &3. Java中,下面哪个关键字用于定义接口?A. classB. interfaceC. extendsD. implements4. Java中,下面哪个数据类型不属于基本数据类型?A. intB. charC. StringD. boolean5. 下面哪个方法可以实现字符串的截取?A. substring(int start, int end)B. substring(int start)C. substring(int end)D. substring()二、填空题6. 在Java中,所有的类都是______类的子类。
7. Java中定义类的关键字是______。
8. 在Java中,______关键字用于声明一个常量。
9. Java中的构造方法名称必须与______相同。
10. 在Java中,一个类的构造方法不能被______。
三、判断题11. Java中,所有的对象都继承自Object类。
()12. Java中的方法可以重载,但不可以重写。
()13. Java中的数组的默认初始化值是0。
()14. 在Java中,字符串常量存储在常量池中。
()15. Java中的switch语句可以支持所有数据类型。
()### 答案一、选择题1. A. main()2. A. %3. B. interface4. C. String5. A. substring(int start, int end)二、填空题6. Object7. class8. final9. 类名10. 继承三、判断题11. √12. ×(Java中的方法既可以重载,也可以重写)13. ×(Java中的数组的默认初始化值取决于数据类型,例如整型数组的默认值是0,布尔数组的默认值是false)14. √15. ×(Java中的switch语句只支持byte、short、char、int四种数据类型)### 解析1. Java程序的入口点是main()方法,格式为public static void main(String[] args)。
Java基础教程考试题目单选题1、下列选项中,属于字符常量的是()2分•A、"a"•B、'ab'•C、'1'•D、1参考答案:C答案说明:字符常量用于表示一个字符,一个字符常量要用一对英文半角格式的单引号(' ')引起来,它可以是英文字母、数字、标点符号、以及由转义序列来表示的特殊字符,如’a’。
2、下列选项中,哪一个是多行注释符号()2分•A、//**//•B、/*/*•C、//•D、/**/参考答案:D答案说明:/* */ 表示多行注释,以“/*”起始,以“*/”结束。
3、下列异常声明中,正确的是()2分•A、publicvoidthrowsIOExceptionfun(){}•B、publicvoidfunthrowsIOException(){}•C、publicvoidfun()throwsIOException{}•D、publicvoidfun()throwsIOException,throwsSQLException{}参考答案:C答案说明:throws关键字需要写在方法声明的后面,throws后面需要声明方法中发生异常的类型,通常将这种做法称为方法声明抛出一个异常。
4、以下关于成员属性与成员方法的描述中,错误的是()2分•A、成员属性我们也叫成员变量,它就是描述对象的特征。
它可以定义在类中,也可以定义在方法中•B、成员方法用于描述对象的行为•C、在类中定义的变量,我们称为成员变量•D、在类中定义的方法,我们称变成员方法参考答案:A答案说明:类中可以定义成员变量和成员方法,其中成员变量用于描述对象的特征,也被称作属性,成员方法用于描述对象的行为,可简称为方法。
定义在类中的变量被称为成员变量,定义在方法中的变量被称为局部变量。
5、关于表达式1234/1000 * 1000的运算结果,下列哪个选项是正确的()2分•A、1234•B、1000•C、1234.0•D、以上都不对参考答案:B答案说明:Java中,整数之间相除,会忽略小数部分,得到的结果还是整型数据。
java基础试题及答案一、选择题1. 下列哪个不是Java基本数据类型?A. intB. charC. StringD. boolean答案:C。
String不是Java的基本数据类型,而是引用数据类型。
2. 在Java中,下列哪个操作符用于取模?A. %B. /C.D. &答案:A。
取模操作符是%,用于求两个数的余数。
3. 下列哪个方法可以实现字符串的截取?A. substring(int start, int end)B. substring(int start, int length)C. substring(int index)D. substring(int index, int length)答案:A。
substring(int start, int end)方法可以实现字符串的截取。
4. 下列哪个类表示日期和时间?A. DateB. CalendarC. SimpleDateFormatD. java.time.LocalDate答案:A。
Date类表示日期和时间,但已不建议使用。
现在推荐使用java.time包下的LocalDate、LocalTime和LocalDateTime等类。
二、填空题1. Java程序的执行入口是______。
答案:main方法。
2. 在Java中,定义类时必须使用______关键字。
答案:class。
3. 一个Java源文件中最多只能有一个______类。
答案:public。
4. 在Java中,数组的默认初始化值是______。
答案:对于基本数据类型,int、float、double等默认为0;对于引用数据类型,默认为null。
三、判断题1. Java中的方法可以重载,即可以有相同的方法名,但参数列表不同。
答案:正确。
2. Java中的方法可以重写,即子类可以重写父类的方法。
答案:正确。
3. 在Java中,所有的对象都默认继承自Object类。
一、选择题(每题2分,共40分)1、下面哪个是Java语言中正确的标识符( C )A、3comB、importC、thatD、this2、下面哪个语句(初始化数组)是不正确的:(B)A.int x[] = {1,2,3}; B.int x[3] = {1,2,3};C.int[] x = {1,2,3}; D.int x[] = new int[]{1,2,3};3、下述概念中不属于面向对象方法的是( D )。
A.对象、消息 B.继承、多态C.类、封装 D.过程调用4、下面的代码段中,执行之后i 和j 的值是什么? ( B )int i = 1;int j;j = i++*2+3*--i;A.1, 2 B.1, 5 C.2, 1 D.2, 25、下面哪条语句把方法声明为抽象的公共方法?(B )A.public abstract method();B.public abstract void method();C.public abstract void method(){}D.public void method() extends abstract;6、下面关于java中类的说法哪个是不正确的?( C )A.类体中只能有变量定义和成员方法的定义,不能有其他语句。
B.构造函数是类中的特殊方法。
C.类一定要声明为public的,才可以执行。
D.一个java文件中可以有多个class定义。
7、假设A类有如下定义,设a是A类的一个实例,下列语句调用哪个是错误的?( C )class A{ int i;static String s;void method1() { }static void method2() { }}A、System.out.println(a.i);B、a.method1();C、A.method1();D、A.method2()8、容器被重新设置大小后,哪种布局管理器的容器中的组件大小不随容器大小的变化而改变? ( B )A、CardLayoutB、FlowLayoutC、BorderLayoutD、GridLayout9、下列哪个用户图形界面组件在软件安装程序中是常见的? ( C )A.滑块B.进度条C.按钮D.标签10、在Java 中如果要在字符串类型对象s=“JA V A”,中找出‘V’出现的位置可使用下面哪个方法:(B)A.mid(2,s); B.charAt(2); C.s.indexOf(‘V’);D.indexOf(s,’V’);11、Java中哪个类提供了随机访问文件的功能。
java编程基础考试题一、选择题(每题2分,共20分)在Java中,哪个关键字用于声明一个类?A. classB. structC. typeD. object下列哪个是Java中的基本数据类型?A. StringB. intC. ArrayListD. Scanner下列关于Java中变量命名的说法,哪个是正确的?A. 变量名必须以数字开头B. 变量名可以使用空格C. 变量名区分大小写D. 变量名不能使用下划线在Java中,以下哪个是有效的注释方式?A. // 这是一个单行注释B. /* 这是一个多行注释 /C. / 这是一个单行注释D. // 这是一个多行注释下列哪个选项可以正确地声明一个整型数组并初始化?A. int[] myArray = new int[5] {1, 2, 3, 4, 5};B. int[] myArray = {1, 2, 3, 4, 5};C. int myArray[] = new int[5] {1, 2, 3, 4, 5};D. int myArray = {1, 2, 3, 4, 5};在Java中,哪个关键字用于表示方法返回值的类型?A. voidB. returnC. typeD. returnType下列哪个是Java中的条件语句?A. forB. ifC. whileD. switch下列关于Java中System.out.println()方法的说法,哪个是正确的?A. 它用于从控制台读取输入B. 它用于在控制台输出文本C. 它用于在控制台显示错误消息D. 它用于在控制台显示警告消息在Java中,String类型的数据以下列哪种方式声明?A. string myString = "Hello";B. String myString = new String("Hello");C. string myString = new String("Hello");D. String = "Hello";下列关于Java中静态方法(static method)的说法,哪个是正确的?A. 静态方法只能访问静态变量B. 静态方法不能被实例对象调用C. 静态方法不能包含非静态方法D. 静态方法只能在类加载时被调用一次二、填空题(每题2分,共10分)在Java中,一个类通常包含_______、字段(属性)和方法。
java基础考试试题及答案1. Java 是一种(A)语言。
A. 编译型B. 解释型C. 编译型和解释型D. 以上都不是答案:C2. 在 Java 中,用于定义类的关键字是(B)。
A. structB. classC. interfaceD. enum答案:B3. Java 中的 main 方法的返回类型必须是(A)。
A. voidB. intC. StringD. double答案:B4. 下列哪个选项是 Java 的数据类型?(D)A. BooleanB. CharC. IntegerD. All of the above答案:D5. 在 Java 中,用于声明字符串的关键字是(C)。
A. stringB. StringC. "string"D. 'string'答案:B6. Java 中的数组声明方式如下:(C)。
A. int[] array;B. array int[];C. int array[];D. All of the above答案:A7. Java 中的 switch 语句可以用于(B)类型的数据。
A. intB. StringC. floatD. All of the above答案:D8. 在 Java 中,用于捕获异常的关键字是(A)。
A. tryB. catchC. finallyD. throw答案:B9. Java 中的垃圾回收机制是自动的,用于回收不再使用的(C)。
A. 内存B. 变量C. 对象D. 以上都是答案:D10. Java 中的多线程可以通过实现(A)接口来创建。
A. RunnableB. CallableC. ThreadD. Executor答案:A11. 在 Java 中,下列哪个关键字用于定义接口?(C)A. classB. structC. interfaceD. enum答案:C12. Java 中的泛型是在哪个版本中引入的?(B)A. Java 1.4B. Java 5C. Java 6D. Java 7答案:B13. Java 中的集合框架位于哪个包中?(A)A. java.utilB. ngC. java.ioD. 答案:A14. 在 Java 中,下列哪个类提供了对集合的同步控制?(B)A. CollectionsB. Collections.synchronizedListC. ListD. ArrayList答案:B15. Java 中的 HashMap 是基于哪种数据结构实现的?(A)A. 哈希表B. 树C. 链表D. 数组答案:A16. 在 Java 中,下列哪个关键字用于声明单例模式?(D)A. staticB. finalC. privateD. All of the above答案:D17. Java 中的注解(Annotation)可以用来做什么?(C)A. 编译时处理B. 运行时处理C. 编译时和运行时处理D. 以上都不是答案:C18. Java 中的哪个类提供了对文件的输入输出操作?(A)A. FileB. FileInputStreamC. FileOutputStreamD. BufferedReader答案:A19. 在 Java 中,下列哪个关键字用于声明抽象类?(B)A. finalB. abstractC. staticD. synchronized答案:B20. Java 中的哪个关键字用于声明内部类?(C)A. classB. structC. inner classD. enum答案:C请注意,以上内容是一个简单的 Java 基础考试试题及答案示例。
新员工考试一、选择题共30题,每题2分1.下面哪些是合法的标识符多选题A. $personsB. TwoUsersC. pointD. thisE. _endline答案A,B,E分析Java的标识符可以以一个Unicode字符,下滑线_,美元符$开始,后续字符可以是前面的符号和数字,没有长度限制,大小写敏感,不能是保留字this保留字;2.哪些是将一个十六进制值赋值给一个long型变量单选题A. long number = 345L;B. long number = 0345;C. long number = 0345L;D. long number = 0x345L答案 D分析十六进制数以0x开头,long型数以L大小写均可,一般使用大写,因为小写的l和数字1不易区分;3.下面的哪些程序片断可能导致错误多选题A. String s = "Gone with the wind";String t = " good ";String k = s + t;B. String s = "Gone with the wind";String t;t = s3 + "one";C. String s = "Gone with the wind";String standard = ;D. String s = "home directory";String t = s - "directory";答案B,D分析A:String类型可以直接使用+进行连接运算;B:String是一种Object,而不是简单的字符数组,不能使用下标运算符取其值的某个元素,错误;C:toUpperCase方法是String对象的一个方法,作用是将字符串的内容全部转换为大写并返回转换后的结果String类型;D:String类型不能进行减-运算,错误;4.point x处的哪些声明是句法上合法的多选题class Person {private int a;public int changeint m{ return m; }}public class Teacher extends Person {public int b;public static void mainString arg{Person p = new Person;Teacher t = new Teacher;int i;i = m;B. i = b;C. i = ;D. i = 30;E. i = .答案D,E分析A:m没有被声明过,不能使用;B:虽然b是类Teacher的public成员变量,但是在静态方法中不能使用类中的非静态成员;C:a是类Person的private成员,在类外不能直接引用;D:changeint m方法是public方法,并且返回一个int型值,可以通过类的实例变量p引用并赋值给一个int型变量;E:b是类Teacher的public成员变量,且是int型,可以通过类的实例变量t引用并赋值给一个int型变量;5.下面的代码片断多选题:1 public void create {2 Vector myVect;3 myVect = new Vector;4 }下面的哪些陈述正确A. 第二行的声明不会为变量myVect分配内存空间;B. 第二行的声明分配一个到Vector对象的引用的内存空间;C. 第二行语句创建一个Vector类对象;D. 第三行语句创建一个Vector类对象;E. 第三行语句为一个Vector类对象分配内存空间;答案A,D,E分析要为一个新对象分配空间必须执行new Xxx调用,new调用执行以下的操作:1.为新对象分配空间并将其成员初始化为0或者null;2.执行类体中的初始化;例如在类中有一个成员声明int a=10;在第一步后a=0 ,执行到第二步后a=103.执行构造函数;4.变量被分配为一个到内存堆中的新对象的引用;6.下面的哪些答案可以用以表示八进制值8 单选题A. 010B. 0x10C. 08D. 0x8答案 A分析八进制值以0开头,以0x开头的为十六进制值,八进制中不能出现数字8,最大只有7;1 class Person {2 public void printValueint i, int j {/…/ }3 public void printValueint i{/.../ }4 }5 public class Teacher extends Person {6 public void printValue {/.../ }7 public void printValueint i {/.../}8 public static void mainString args{9 Person t = new Teacher;10 10;11 }12 }第十行的声明将调用哪些方法单选题A. on line 2B. on line 3C. on line 6D. on line 7答案 D分析变量t是一个Person对象,但是它是用Teacher实例化的,这个问题涉及到java的编译时多态和运行时多态的问题,就编译时多态来说,t实际上是一个Person 类,这涉及到类型的自动转换将一个子类的实例赋值给一个父类的变量是不用进行强制类型转换,反之则需要进行强制类型转换,而且被赋值的变量实际上应该是一个子类的对象,如果对t调用了子类中新增的方法则造成编译时错误编译将不能通过,而在运行时,运行时系统将根据t实际指向的类型调用对应的方法,对于本例来说,10将调用t实际指向的Teacher类的对应方法;在java中,可以用一个子类的实例实例化父类的一个变量,而变量在编译时是一个父类实例,在运行时可能是一个子类实例;7.给出下面的代码:单选题x的取值在什么范围内时将打印字符串"second";A. x > 0B. x > -3C. x <= -3D. x <= 0 & x > -3答案 D分析x>0时打印"first",x>-3&&x<=0时打印"second",x<=-3时打印"third";这个题目没有什么难的,只要理解if语句的语法就可以了;8.下面的哪些赋值语句是不正确的单选题A. float f = ;B. double d = ;C. double d = ;D. double d = .答案 A题目:;浮点数的赋值是带有小数点的数字缺省是double型的,如果在浮点数后面加f 或者F则是float,后面加d或者D则是double,科学计数法形式的浮点数也是double型的,而double的精度比float高,将一个高精度的double赋值给一个低精度的float时需要进行强制类型转换,反之则不需要;9.给出下面的不完整的类代码: 单选题class Person {String name, department;int age;public PersonString n{ name = n; }public PersonString n, int a{ name = n; age = a; }public PersonString n, String d, int a {."处A. Personn,a;B. thisPersonn,a;C. thisn,a;D. thisname,age.答案 C分析:在同一个类的不同构造方法中调用该类的其它构造方法需要使用this…的形式,而且必须是在构造方法的第一行调用,这个和普通的方法重载调用的方式不同,普通的方法可以直接使用方法名加参数来调用,而且调用位置没有限制,因此答案A是不行的,B的语法就是错误的,D的错误在于在父类型的构造函数被调用前不能引用类的成员;构造方法是一个类对象实例化的起点虽然严格来说首先执行的并不是构造方法的第一个语句,而是内存的分配,因此在构造方法中不能将成员作为参数引用;public void test {condition 1B. condition 2C. condition 3D. finally答案 ad分析:如果try块中的语句在执行时发生异常,则执行从该处中断而进入catch块,根据异常的类型进行匹配,最前面的优先进行匹配比较,只要该异常是catch中指定的异常的子类就匹配成功进而执行相应的catch中的内容,而finally块中的内容无论是否发生异常都将被执行;10.给出下面的代码:单选题public class Test {void printValueint m{while --m > 10}public static void mainString arg {int i=10;Test t= new Test;i;}}输出将是什么A. The value is 8B. The value is 9C. The value is 10D. The value is 11答案:c此题考察的是do… while循环和 -- 操作符的知识,do…while最少被执行一次,在执行完do中的内容后判断while中的条件是否为true,如果为true的话就再执行do 中的内容,然后再进行判断,以此类推直到while的判断为false时退出循环执行循环后面的内容,而—操作符的规则是在变量右边的-- 将先进行运算,然后才是使变量的值减一,而在变量左边的是先将变量的值减一再运算;11.给出下面的代码:单选题1 public void modify {2 int i, j, k;3 i = 100;4 while i > 0 {5 j = i 2;7 k = k + 1;8 i--;9 }10 }哪些行在编译时可能产生错误;A. line 4B. line 6C. line 7D. line 8答案 c这个问题在前面有关变量的类型及其作用域的问题中讨论过,局部变量在使用前必须显式初始化,而代码中的变量k在使用前没有;12.给出下面的代码片断:单选题1 String str = null;2 if str = null && > 10 {34 }5 else if str = null & < 5 {67 }ntln"end"; }哪些行将导致错误A. line 1B. line 2C. line 5D. line 8答案 c此题需要将代码仔细看清楚,查询没有逻辑错误,if …else的使用没有问题,也没有拼写错误,错误在于第5行的“与”操作符的使用,逻辑操作符logical operator的“与”应该是&&,而&是位逻辑操作符bitwise logical operator的“与”,使用的对象不一样,逻辑操作符的“与”的左右操作数都应该是布尔型logical boolan的值,而位逻辑操作符的左右操作数都是整型integral值;13.给出下面的代码:单选题public class Person{static int arr = new int10;public static void mainString a {}}那个叙述是对的;A. 编译时将发生错误;B. 编译时正确但是运行时出错;C. 输出为0;D. 输出为null答案 cint型数组是类对象,它在类被加载时完成初始化,在前面题目中已经有叙述,由于是原始数据类型int,其初始值为0;public class Parent {int addValue int a, int b {.}B. public void addValue {.}C. public int addValue int a {.}D. public int addValue int a, int b throws MyException {.}答案bc此题涉及方法重载overload,方法重写override以及类派生时方法重写的规则;方法重载的规则是:一、参数列表必须不同,个数的不同完全可以,如果个数相同则参数类型的不同不能引起歧意,例如int 和long,float和double就不能作为唯一的类型不同;二、返回值可以不同,但是不能是重载时唯一的不同点这点和c++中不同,c++中返回类型必须一致;方法重写发生在类继承时,子类可以重写一个父类中已有的方法,必须在返回类型和参数列表一样时才能说是重写,否则就是重载,java中方法重写的一个重要而且容易被忽略的规则是重写的方法的访问权限不能比被重写的方法的访问权限低重写的另一个规则是重写的方法不能比被重写的方法抛弃throws更多种类的异常,其抛弃的异常只能少,或者是其子类,不能以抛弃异常的个数来判断种类,而应该是异常类层次结果上的种类;此题中答案a的错误就是重写的访问权限比被重写的方法的低,而b,c都属于重载,d的错误在于比被重写的方法抛弃了更多种类的异常;14.共有成员变量MAX_LENGTH是一个int型值,变量的值保持常数值100;使用一个短声明定义这个变量;单选题A. public int MAX_LENGTH=100;B. final int MAX_LENGTH=100;C. final public int MAX_LENGTH=100;D. public final int MAX_LENGTH=100;答案 dJava中共有变量使用public定义,常量变量使用final,另外注意的是修饰符的顺序,一个最完整的修饰是public static final int varial_a=100;这个顺序不能错,这和c++中也是不同的;而答案c恰恰错在修饰符的顺序上;15.下面的那个java源文件代码片断是对的多选题A. package testpackage;public class Test{.}B. import .;package testpackage;public class Test{.}C. import .;class Person{.}public class Test{.}D. import .;import .;public class Test{.}答案acdjava中的package语句必须是源文件中除去说明以外的第一条语句,导入包语句可以有几个,但是必须位于package语句之后,其它类定义之前,一个源文件中可以有几个类,但最多只能有一个是public的,如果有,则源文件的文件名必须和该类的类名相同;16.下面的哪些声明是合法的多选题A. long l = 4990;B. int i = 4L;C. float f = ;D. double d = ;E. double t = 0.9F.答案ade此题的考点是数字的表示法和基本数据类型的类型自动转换,没有小数点的数字被认为是int型数,带有小数点的数被认为是double型的数,其它的使用在数字后面加一个字母表示数据类型,加l或者L是long型,加d或者D是double,加f或者F是float,可以将低精度的数字赋值给高精度的变量,反之则需要进行强制类型转换,例如将int,short,byte赋值给long型时不需要显式的类型转换,反之,将long型数赋值给byte,short,int型时需要强制转换int a=int123L;;17.如下描述:多选题public class Parent {int change {…}}class Child extends Parent {}哪些方法可被加入类ChildA. public int change{}B. int changint i{}C. private int change{}D. abstract int chang{}答案ab这个题目的问题在第35题中有详尽的叙述;需要注意的是答案D的内容,子类可以重写父类的方法并将之声明为抽象方法,但是这引发的问题是类必须声明为抽象类,否则编译不能通过,而且抽象方法不能有方法体,也就是方法声明后面不能带上那两个大括号{},这些D都不能满足;18.给出下面的代码:单选题1 class Parent {2 private String name;3 public Parent{}4 }5 public class Child extends Parent {6 private String department;7 public Child {}8 public String getValue{ return name; }9 public static void mainString arg {10 Parent p = new Parent;11 }12 }哪些行将导致错误A. line 3B. line 6C. line 7D. line 8E. line 10答案 d第8行的getValue试图访问父类的私有变量,错误,参看前面有关变量类型及其作用域的叙述19.变量"result"是一个boolean型的值,下面的哪些表达式是合法的多选题A. result = true;B. if result { . }C. if result= 0 { . }D. result = 1答案abJava的boolean不同于c或者c++中的布尔值,在java中boolean值就是boolean 值,不能将其它类型的值当作boolean处理;20.类Teacher和Student都是类Person的子类单选题Person p;Teacher t;Student s;P,t和s都是非空值;ift instanceof Person { s = Studentt; }这个if语句导致的结果是什么A. 将构造一个Student对象;B. 表达式合法;C. 编译时非法;D. 编译时合法而在运行时可能非法;答案 cinstanceof操作符的作用是判断一个变量是否是右操作数指出的类的一个对象,由于java语言的多态性使得可以用一个子类的实例赋值给一个父类的变量,而在一些情况下需要判断变量到底是一个什么类型的对象,这时就可以使用instanceof了;当左操作数是右操作数指出的类的实例或者是子类的实例时都返回真,如果是将一个子类的实例赋值给一个父类的变量,用instanceof判断该变量是否是子类的一个实例时也将返回真;此题中的if语句的判断没有问题,而且将返回真,但是后面的类型转换是非法的,因为t 是一个Teacher对象,它不能被强制转换为一个Student对象,即使这两个类有共同的父类;如果是将t转换为一个Person对象则可以,而且不需要强制转换;这个错误在编译时就可以发现,因此编译不能通过;21.给出下面的类:单选题public class Sample{long length;public Samplelong l{ length = l; }public static void mainString arg{Sample s1, s2, s3;s1 = new Sample21L;s2 = new Sample21L;s3 = s2;long m = 21L;}}哪个表达式返回true;A. s1 == s2;B. s2 == s3;C. m == s1;D. m.答案 b前面已经叙述过==操作符和String的equals方法的特点,另外==操作符两边的操作数必须是同一类型的可以是父子类之间才能编译通过;22.给出下面有关List的表达式:多选题List l = new List6,true;哪些叙述是对的;A. 在没有其它的约束的条件下该列表将有6行可见;B. 一行的最大字符数是6C. 列表将允许用户多选;D. 列表只能有一项被选中;答案acList组件的该构造方法的第一个参数的意思是它的初始显式行数,如果该值为0则显示4行,第二个参数是指定该组件是否可以多选,如果值为true则是可以多选,如果不指定则缺省是不能多选;23.给出下面的代码:单选题class Person {String name,department;public void printValue{}}public class Teacher extends Person {int salary;public void printValue{}}下面的哪些表达式可以加入printValue方法的"doing the same as..."部分A. printValue;B. ;C. ;D. .答案 d子类可以重写父类的方法,在子类的对应方法或其它方法中要调用被重写的方法需要在该方法前面加上”super.”进行调用,如果调用的是没有被重写的方法,则不需要加上super.进行调用,而直接写方法就可以;这里要指出的是java支持方法的递归调用,因此答案a和b在语法上是没有错误的,但是不符合题目代码中说明处的要求:即做和父类的方法中相同的事情打印名字和部门,严格来说也可以选a和b;24.给出下面的代码片断:多选题1 switchm2 {3 k;4 case 2:56 }m为哪些值将导致"default"输出A. 0B. 1C. 2D. 3答案cd此题考察switch语句的用法,switch的判断的条件必须是一个int型值,也可以是byte、short、char型的值,case中需要注意的是一个case后面一般要接一个break 语句才能结束判断,否则将继续执行其它case而不进行任何判断,如果没有任何值符合case列出的判断,则执行default的语句,default是可选的,可以没有,如果没有default 而又没有任何值匹配case中列出的值则switch不执行任何语句;25.给出下面的不完整的方法:多选题12 { success = connect;3 if success==-1 {4 throw new TimedOutException;5 }6}TimedOutException 不是一个RuntimeException;下面的哪些声明可以被加入第一行完成此方法的声明;A. public void methodB. public void method throws ExceptionC. public void method throws TimedOutExceptionD. public void method throw TimedOutExceptionE. public throw TimedOutException void method答案b、c如果程序在运行的过程中抛出异常,而这个异常又不是RuntimeException或者Error,那么程序必须捕获这个异常进行处理或者声明抛弃throws该异常,捕获异常可以使用try{}catch{}语句,而抛弃异常在方法声明是声明,在方法的声明后面加上throws XxxxException,抛弃多个异常时在各异常间使用逗号,分隔,题目中的程序在运行时抛出的不是一个RuntimeException,所有必须捕获或者抛弃,而程序又没有捕获,所有应该在方法声明中声明抛弃;由于Exception是所有异常的父类,所有当然也可以代表RuntimeException了;26.下面的哪些答案可以正确表示一个十六进制数字10单选题A. 0xAB. 0x16C. 0AD. 016答案 a十六进制数以0x开头,以0开头的是八进制数;十六进制表示中的a,b,c,d,e,f依次为10,11,12,13,14,15;27.给出下面的代码:单选题1 public class Test {2} int m, n;3} public Test {}4} public Testint a { m=a; }5} public static void mainString arg {6} Test t1,t2;7} int j,k;8} j=0; k=0;9} t1=new Test;10} t2=new Testj,k;11} }12} }在编译时哪行将导致一个错误A. line 3B. line 5C. line 6D. line 10答案 d第10行的声明调用一个带两个参数的Test的构造方法,而该类没有这样的构造方法;二、简答题1.读如下程序,说出结果,并说明得出结果原因10分;public class BreakContinue {public static void mainString args {for int i = 0; i < 10; i++ {ifi == 3 || i == 5 {continue;}for int j = 0; j < i; ++j {if i + j > 5 {break;}}if i == 6 {break;}}}}答案:1,2,3,4,52.读程序,说出j值,并说明得出结果原因10分;public class Test {private static int j = 0;public static void mainString args {methodA0;}private static boolean methodBint k{j += k;return true;}public static void methodAint i {boolean b;b = i < 10 | methodB4;b = i < 10 || methodB8; 序分析:用情况语句比较好,如果第一个字母一样,则判断用情况语句或if语句判断第二个字母;importpublic class Ex26 {public static void mainString args{//保存用户输入的第二个字母char weekSecond;//将Scanner类示例化为input对象,用于接收用户输入Scanner input = new Scanner;//开始提示并接收用户控制台输入"请输入星期值英文的第一个字母,我来帮您判断是星期几:";String letter = ;//判断用户控制台输入字符串长度是否是一个字母if == 1{//利用取第一个索引位的字符来实现让Scanner接收char类型输入char weekFirst = 0;switch weekFirst{case'm'://当输入小写字母时,利用switch结构特性执行下一个带break语句的case分支,以实现忽略用户控制台输入大小写敏感的功能case'M':"星期一Monday";break;case't'://当输入小写字母时,利用switch结构特性执行下一个带break语句的case分支,以实现忽略用户控制台输入大小写敏感的功能case'T':"由于星期二Tuesday与星期四Thursday均以字母T开头,故需输入第二个字母才能正确判断:"; letter = ;//判断用户控制台输入字符串长度是否是一个字母if == 1{//利用取第一个索引位的字符来实现让Scanner接收char类型输入weekSecond = 0;//利用或||运算符来实现忽略用户控制台输入大小写敏感的功能if weekSecond == 'U' || weekSecond == 'u'{"星期二Tuesday";break;//利用或||运算符来实现忽略用户控制台输入大小写敏感的功能} else if weekSecond == 'H' || weekSecond == 'h'{"星期四Thursday";break;//控制台错误提示} else{"输入错误,不能识别的星期值第二个字母,程序结束";break;}} else {//控制台错误提示"输入错误,只能输入一个字母,程序结束";break;}case'w'://当输入小写字母时,利用switch结构特性执行下一个带break语句的case分支,以实现忽略用户控制台输入大小写敏感的功能case'W':"星期三Wednesday";break;case'f'://当输入小写字母时,利用switch结构特性执行下一个带break语句的case分支,以实现忽略用户控制台输入大小写敏感的功能case'F':"星期五Friday";break;case's'://当输入小写字母时,利用switch结构特性执行下一个带break语句的case分支,以实现忽略用户控制台输入大小写敏感的功能case'S':"由于星期六Saturday与星期日Sunday均以字母S开头,故需输入第二个字母才能正确判断:"; letter = ;//判断用户控制台输入字符串长度是否是一个字母if == 1{//利用取第一个索引位的字符来实现让Scanner接收char类型输入weekSecond = 0;//利用或||运算符来实现忽略用户控制台输入大小写敏感的功能if weekSecond == 'A' || weekSecond == 'a'{"星期六Saturday";break;//利用或||运算符来实现忽略用户控制台输入大小写敏感的功能} else if weekSecond == 'U' || weekSecond == 'u'{"星期日Sunday";break;//控制台错误提示} else{"输入错误,不能识别的星期值第二个字母,程序结束";break;}} else{//控制台错误提示"输入错误,只能输入一个字母,程序结束";break;}default://控制台错误提示"输入错误,不能识别的星期值第一个字母,程序结束";break;}} else{//控制台错误提示"输入错误,只能输入一个字母,程序结束";}}}。
java基础考试题及答案详解1. Java中,哪个关键字用于声明一个类?A. structB. classC. interfaceD. enum答案:B2. 在Java中,下列哪个数据类型是基本数据类型?A. StringB. intC. ArrayListD. HashMap答案:B3. 下列哪个选项是Java中合法的标识符?A. 2variableB. variable2C. _variableD. variable!答案:B4. Java中,哪个关键字用于实现多态?A. extendsB. implementsC. interfaceD. abstract答案:A5. 在Java中,下列哪个关键字用于创建一个接口?A. classB. structC. interfaceD. enum答案:C6. Java中,哪个关键字用于抛出异常?A. throwB. throwsC. catchD. try答案:B7. 在Java中,下列哪个选项是正确的方法重载?A. 方法名相同,参数列表相同B. 方法名相同,参数列表不同C. 方法名不同,参数列表相同D. 方法名不同,参数列表不同答案:B8. Java中,下列哪个关键字用于声明一个抽象类?A. abstractB. finalC. staticD. synchronized答案:A9. 在Java中,下列哪个选项是正确的继承关系?A. 一个类只能继承一个类B. 一个类可以继承多个类C. 一个类不能继承任何类D. 一个类可以继承所有类答案:A10. Java中,下列哪个关键字用于声明一个静态方法?A. staticB. finalC. synchronizedD. abstract答案:A11. 在Java中,下列哪个关键字用于声明一个常量?A. staticB. finalC. synchronizedD. abstract答案:B12. Java中,哪个关键字用于声明一个同步方法?A. synchronizedB. staticC. finalD. abstract答案:A13. 在Java中,下列哪个选项是正确的数组初始化方式?A. int[] myArray = new int[5];B. int[] myArray = new int(5);C. int[] myArray = {1, 2, 3};D. int[] myArray = new int[]{1, 2, 3};答案:D14. Java中,下列哪个关键字用于声明一个内部类?A. classB. structC. interfaceD. enum答案:A15. 在Java中,下列哪个选项是正确的泛型使用方式?A. List list = new ArrayList();B. List<String> list = new ArrayList<String>();C. List list = new ArrayList<String>();D. List<String> list = new ArrayList();答案:B。
(完整版)Java基础试题和答案Java 试题1)java 程序中,main 方法的格式正确的是()。
(选择一项)a)staticvoidmain(String[]args)b)publicvoidmain(String[]args)c)publicstaticvoidmain(String[]s)d)publicstaticvoidmain(String[]args)2)给定java 代码,如下:publicbytecount(byteb1,byteb2){return ;}要使用这段代码能够编译成功,横线处可以填入()。
(选择一项)a)(byte)(b1-b2)b)(byte)b1-b2c)b1-b2d)(byte)b1/b23)在Java 中,在包com.db 下定义一个类,要让包com.util 下的所有类都可以访问这个类,这个类必须定义为()。
(选择一项)a)protectedb)private c)public d)friendly4)在Java 中,下列()语句不能通过编译。
(选择一项)a)Strings=“join”+“was”+“here”;b)Strings=“join”+3;c)inta=3+5d)floatf=5+5.5;5)在Java 中下列()方法可以把JFrame 的布局管理器设为FlowLayout 类型(选择一项)a)jFrame.setLayout(newFlowLayout()); b)jFrame.addLayout(newFlowLayout())c)jFrame.setFlowLayout()d)jFrame.addFlowLayout()6)给定java 代码如下,运行时,会产生()类型的异常。
(选择一项)Strings=null;s.concat(“abc”);a)ArithmeticException b)NullPointerException c)IOException d)EOFException7)在java 中,()对象可以使用键/值的形式保存数据。
java基础考试试题及答案一、选择题(每题2分,共20分)1. Java语言属于以下哪一类编程语言?A. 编译型语言B. 解释型语言C. 汇编语言D. 机器语言答案:B2. 下列哪个是Java的关键字?A. classB. functionC. defineD. include答案:A3. Java中,哪个关键字用于定义一个类?A. classB. structC. typeD. interface答案:A4. Java中的main方法必须定义为:A. public static void main(String args[])B. private static void main(String[] args)C. public static void main(String[] args)D. public void main(String args[])答案:A5. 以下哪个是Java的合法标识符?A. 2variableB. variable2C. variable#2D. variable-2答案:B6. Java中,哪个关键字用于实现继承?A. extendsB. inheritC. deriveD. super答案:A7. Java中,哪个关键字用于实现多态?A. overloadB. overrideC. polymorphD. overloading答案:B8. Java中,哪个关键字用于定义接口?A. classB. structC. interfaceD. package答案:C9. Java中,哪个关键字用于定义包?A. packageB. classC. importD. export答案:A10. Java中,哪个关键字用于实现异常处理?A. tryB. catchC. finallyD. all of the above答案:D二、填空题(每空2分,共20分)1. Java是一种________面向对象的编程语言。
javaoop基础考试题及答案一、选择题(每题2分,共20分)1. 在Java中,哪个关键字用于定义一个类?A. structB. classC. interfaceD. enum答案:B2. 下面哪个选项是Java中的一个访问修饰符?A. privateB. publicC. protectedD. All of the above答案:D3. Java中,哪个关键字用于创建一个对象的实例?A. newB. createC. instanceD. object答案:A4. 以下哪个是Java中的多态性?A. 同一个接口,不同的实现B. 同一个实现,不同的接口C. 同一个类,不同的对象D. 同一个对象,不同的类答案:A5. 在Java中,哪个关键字用于抛出异常?A. throwB. throwsC. exceptionD. error答案:B6. Java中,哪个关键字用于声明一个方法不接受任何参数?A. voidB. noneC. emptyD. void()答案:D7. 下列哪个是Java中的集合框架?A. ArrayListB. LinkedListC. HashSetD. All of the above答案:D8. 在Java中,哪个关键字用于实现接口?A. implementsB. extendsC. overrideD. abstract答案:A9. Java中,哪个关键字用于声明一个抽象类?A. abstractB. virtualC. interfaceD. class答案:A10. 在Java中,哪个关键字用于声明一个静态方法?A. staticB. sharedC. globalD. public答案:A二、填空题(每题2分,共20分)1. Java中,用于定义类的关键字是______。
答案:class2. Java中,用于创建对象实例的关键字是______。
答案:new3. Java中,用于抛出异常的关键字是______。
Java基础教程考试题目单选题1、下列选项中,属于字符常量的是()2分•A、"a"•B、'ab'•C、'1'•D、1参考答案:C答案说明:字符常量用于表示一个字符,一个字符常量要用一对英文半角格式的单引号(' ')引起来,它可以是英文字母、数字、标点符号、以及由转义序列来表示的特殊字符,如’a’。
2、下列选项中,哪一个是多行注释符号()2分•A、//**//•B、/*/*•C、//•D、/**/参考答案:D答案说明:/* */ 表示多行注释,以“/*”起始,以“*/”结束。
3、下列异常声明中,正确的是()2分•A、publicvoidthrowsIOExceptionfun(){}•B、publicvoidfunthrowsIOException(){}•C、publicvoidfun()throwsIOException{}•D、publicvoidfun()throwsIOException,throwsSQLException{}参考答案:C答案说明:throws关键字需要写在方法声明的后面,throws后面需要声明方法中发生异常的类型,通常将这种做法称为方法声明抛出一个异常。
4、以下关于成员属性与成员方法的描述中,错误的是()2分•A、成员属性我们也叫成员变量,它就是描述对象的特征。
它可以定义在类中,也可以定义在方法中•B、成员方法用于描述对象的行为•C、在类中定义的变量,我们称为成员变量•D、在类中定义的方法,我们称变成员方法参考答案:A答案说明:类中可以定义成员变量和成员方法,其中成员变量用于描述对象的特征,也被称作属性,成员方法用于描述对象的行为,可简称为方法。
定义在类中的变量被称为成员变量,定义在方法中的变量被称为局部变量。
5、关于表达式1234/1000 * 1000的运算结果,下列哪个选项是正确的()2分•A、1234•B、1000•C、1234.0•D、以上都不对参考答案:B答案说明:Java中,整数之间相除,会忽略小数部分,得到的结果还是整型数据。
Java基础教程考试题目单选题1、下列选项中,属于字符常量的是()2分•A、"a"•B、'ab'•C、'1'•D、1参考答案:C答案说明:字符常量用于表示一个字符,一个字符常量要用一对英文半角格式的单引号(' ')引起来,它可以是英文字母、数字、标点符号、以及由转义序列来表示的特殊字符,如’a’。
2、下列选项中,哪一个是多行注释符号()2分•A、//**//•B、/*/*•C、//•D、/**/参考答案:D答案说明:/* */ 表示多行注释,以“/*”起始,以“*/”结束。
3、下列异常声明中,正确的是()2分•A、publicvoidthrowsIOExceptionfun(){}•B、publicvoidfunthrowsIOException(){}•C、publicvoidfun()throwsIOException{}•D、publicvoidfun()throwsIOException,throwsSQLException{}参考答案:C答案说明:throws关键字需要写在方法声明的后面,throws后面需要声明方法中发生异常的类型,通常将这种做法称为方法声明抛出一个异常。
4、以下关于成员属性与成员方法的描述中,错误的是()2分•A、成员属性我们也叫成员变量,它就是描述对象的特征。
它可以定义在类中,也可以定义在方法中•B、成员方法用于描述对象的行为•C、在类中定义的变量,我们称为成员变量•D、在类中定义的方法,我们称变成员方法参考答案:A答案说明:类中可以定义成员变量和成员方法,其中成员变量用于描述对象的特征,也被称作属性,成员方法用于描述对象的行为,可简称为方法。
定义在类中的变量被称为成员变量,定义在方法中的变量被称为局部变量。
5、关于表达式1234/1000 * 1000的运算结果,下列哪个选项是正确的()2分•A、1234•B、1000•C、1234.0•D、以上都不对参考答案:B答案说明:Java中,整数之间相除,会忽略小数部分,得到的结果还是整型数据。
6、请阅读下面的程序public class Example03 {public static void main(String[] args) {int x = 3;if (x > 5) {System.out.println("a");} else {System.out.println("b");}}}程序的运行结果是()2分•A、true•B、false•C、a•D、b参考答案:D答案说明:因为判断条件不成立3>5不成立,所以执行会执行else中的语句,输出b。
7、关于final修饰成员变量说法正确的是()2分•A、被final修饰的成员变量为常量•B、被final修饰的成员变量不能被继承•C、被final修饰的成员变量可以被多次赋值•D、final只能在接口中修饰成员变量参考答案:A答案说明:被final修饰的变量可以被继承,被final修饰的类不能被继承,被final修饰的变量为常量不能被第二次赋值或改变引用。
8、下列集合中,不属于Collection接口的子类的是()2分•A、ArrayList•B、LinkedList•C、TreeSet•D、Properties参考答案:D答案说明:Properties集合属于Map集合的子类。
9、请阅读下面的程序。
Class WhileDemo5 {public static void main(String[] args) {int n = 5;while (n < 10) {System.out.print(n);n++;}}}下列选项中,哪一个是程序运行的结果()2分•A、无输出•B、输出56789•C、死循环•D、编译错误参考答案:B答案说明:while条件为true,循环体执行,每执行一次输出n的值,并且n递增。
10、请定义一个由public修饰符修饰的int型成员变量MAX_LENGTH,并使该值保持为常数100,则定义这个变量的语句是()2分•A、publicintMAX_LENGTH=100•B、publicconstintMAX_LENGTH=100•C、finalintMAX_LENGTH=100•D、publicfinalintMAX_LENGTH=100参考答案:D答案说明:应题目的要求,需要将该值保持为常数,那么就需要使用关键字final,所以选择D,const是java的保留关键字,在java中使用final定义常量。
11、下面选项中,完全面向对象的编程语言是()2分•A、C•B、COBOL•C、JAVA•D、FORTRAN参考答案:C答案说明:Java语言全面支持动态绑定,而C++语言只对虚函数使用动态绑定。
总之,Java语言是一个纯粹的面向对象程序设计语言。
12、以下语法格式中,哪一个是三元运算符的语法格式()2分•A、表达式1:表达式2?表达式3•B、表达式1?表达式2:表达式3•C、表达式1:表达式2:表达式3•D、以上答案都不对参考答案:B答案说明:三元运算符语法格式:表达式1?表达式2:表达式3;13、阅读下段代码,class Dog{public String name;Dog(String name){ =name;}}public class Demo1{public static void main(String[] args){Dog dog1 = new Dog("xiaohuang");Dog dog2 = new Dog("xiaohuang");String s1 = dog1.toString();String s2 = dog2.toString();String s3 = "xiaohuang";String s4 = "xiaohuang";}}返回值为true的是()2分•A、dog1.equals(dog2)•B、s1.equals(s2)•C、s3.equals(s4)•D、dog1==dog2参考答案:C答案说明:选项A比较的是两个对象的地址,结果为false,选项B比较的是dog1和dog2对象的to String()值,结果为false,选项C,比较的是内容,内容相同,所以为true,选项D比较的是dog1和dog2对象的地址,结果为false。
14、class MyException extends (1) {}public class Demo {public static void main(String[] args) {try {show();} catch ( (2) e) {e.printStackTrace();}}public static void show() (3) MyException {throw new MyException();}以上程序,创建了一个自定义异常(编译异常),请补全空白处代码()2分•A、(1)Exception(2)MyException(3)throws•B、(1)MyException(2)Exception(3)throws•C、(1)Exception(2)Exception(3)throws•D、(1)Exception(2)MyException(3)Exception参考答案:A答案说明:自定义的异常类继承自Exception或其子类。
Throws用于抛出异常。
15、下列方法中可以用于往HashSet集合中添加元素的是()2分•A、add(Ee)•B、contains(Objecto)•C、clear()•D、iterator()参考答案:A答案说明:用于往集合中添加元素的方法是add(E e)。
contains(Object o)方法用于判断set集合中是否包含指定的元素,clear()方法移除此set集合中的所有元素,iterator()方法用于获取在此set 中的元素上进行迭代的迭代器。
16、以下标识符中,不合法的是()2分•A、user•B、$inner•C、class•D、login_1参考答案:C答案说明:class为java中的关键字。
17、阅读下列的程序class Person{static{System.out.println(name);}private static String name = "hello";}class Demo{public static void main(String[] args){Person p = null;}}下列选项中,程序的运行结果是()2分•A、无结果输出•B、输出null•C、输出hello•D、编译失败参考答案:D答案说明:编译失败,静态成员按照编写顺序加载。
18、100属于下列哪种类型的常量()2分•A、布尔类型•B、字符类型•C、整数类型•D、浮点类型参考答案:C答案说明:100属于整数类型的常量。
19、请阅读下面的程序片段int x = 3;if (x > 5) {System.out.print("a");} else {System.out.print("b");}下列选项中,哪个是程序的运行结果()2分•A、a•B、b•C、ab•D、编译错误参考答案:B答案说明:if语句中的判断条件成立时,会执行if语句中的内容,否则会执行else语句中的内容。
20、下列关于集合的描述中,哪一个是错误的()2分•A、集合按照存储结构可以分为单列集合Collection和双列集合Map。
•B、List集合的特点是元素有序、元素可重复。
•C、Set集合的特点是元素无序并且不可重复。
•D、集合存储的对象必须是基本数据类型。
参考答案:D答案说明:集合可以存储多种数据类型的数据,包括引用数据类型。
21、Java语言中,集合类都位于哪个包中()2分•A、java.util•B、ng•C、java.array•D、java.collections参考答案:A答案说明:集合类都位于java.util包中。
22、while语句的循环体中不能包含的语句是()2分•A、while语句•B、方法定义语句•C、if语句•D、switch语句参考答案:B答案说明:while循环体中可以嵌套其它循环语句以及条件判断语句,但不能包含方法定义语句。
23、下列关于类与对象的说法中,错误的是()2分•A、类是对某一类事物的抽象描述,而对象则是该类事物的个体。