java期末复习
java期末考试题及答案及解析
java期末考试题及答案及解析一、选择题(每题2分,共20分)1. 下列哪个选项不是Java的基本数据类型?A. intB. floatC. doubleD. String答案:D解析:Java的基本数据类型包括整型(byte, short, int, long)、浮点型(float, double)、字符型(char)和布尔型(boolean)。
String是一个引用数据类型。
2. 在Java中,哪个关键字用于定义一个类?A. classB. interfaceC. enumD. struct答案:A解析:关键字class用于定义一个类,是Java面向对象编程的基础。
3. 下列哪个是Java的控制流程语句?A. if-elseB. try-catchD. package答案:A解析:if-else是条件语句,属于控制流程语句。
try-catch用于异常处理,import和package用于导入和声明包。
4. Java中,哪个方法用于获取字符串的长度?A. length()B. size()C. count()D. getLength()答案:A解析:String类中的length()方法用于返回字符串的长度。
5. 下列哪个选项是Java集合框架中接口?A. ArrayListB. LinkedListC. HashSetD. Collection答案:D解析:Collection是Java集合框架中的一个根接口,而ArrayList、LinkedList和HashSet是实现了Collection接口的具体类。
6. 在Java中,哪个关键字用于实现多态?B. abstractC. extendsD. implements答案:C解析:extends关键字用于继承,是实现多态的一种方式。
7. 下列哪个是Java的异常类型?A. RuntimeExceptionB. IOExceptionC. SQLExceptionD. All of the above答案:D解析:所有选项都是Java的异常类型,其中RuntimeException是运行时异常,IOException和SQLException是检查型异常。
java期末考点总结
java期末考点总结一、基础知识1. Java语言的起源和特点2. Java开发环境的配置和使用3. Java程序的基本结构和语法规则4. 数据类型和变量5. 运算符和表达式6. 控制流程和循环结构二、面向对象编程1. 面向对象的基本概念和原则2. 类和对象的定义和使用3. 封装、继承和多态4. 接口和抽象类5. 继承和多态的应用6. 继承和接口的区别三、异常处理1. 异常的概念和分类2. 异常的处理机制3. try-catch语句的使用4. finally语句的作用5. 异常的抛出和捕获6. 自定义异常四、常用类库1. String类的常用方法2. Math类和常用数学方法3. Date类和Calendar类的使用4. 集合框架和常用集合类5. IO流的使用6. 文件的读写操作五、多线程编程1. 进程和线程的概念2. 创建线程和实现Runnable接口的区别3. 同步和互斥的实现4. 线程的状态和控制5. 线程的优先级和调度6. 线程池的使用和管理六、网络编程1. 网络通信的基本概念和协议2. Socket编程和TCP/IP协议3. UDP协议和DatagramSocket类4. URL和URLConnection类的使用5. 服务器和客户端的通信6. HTTP协议和网页的访问七、图形用户界面1. AWT和Swing的区别和优缺点2. 组件的布局和事件处理3. 容器和组件的层次结构4. 图形用户界面的设计和优化5. 多线程和事件处理6. 用户界面的国际化和本地化八、数据库编程1. 数据库的基本概念和SQL语句2. JDBC的使用和连接数据库3. Statement和PreparedStatement的使用4. ResultSet的处理和数据库操作5. 事务和批处理的管理6. 数据库连接池的使用九、Web开发1. HTML和CSS的基本语法和标签2. JavaScript的基本语法和事件处理3. Servlet和JSP的概念和使用4. MVC模式的理解和应用5. 数据库连接和数据处理6. Web应用的发布和部署十、设计模式1. 设计模式的基本概念和分类2. 单例模式和工厂模式的实现3. 观察者模式和适配器模式的应用4. MVC模式和策略模式的理解和应用5. 模板方法模式和装饰者模式的实现6. 设计模式的优缺点和使用场景以上是Java期末考点的总结,希望能帮助你复习和理解Java编程的重要知识点。
Java期末复习
第一章1.面向过程和面向对象程序设计语言的区别2.编译执行和解释执行语言的区别3.java的各个版本,javase javaee javame4.什么是java虚拟机?工作原理是什么?jdk和jre的区别?5.各个命令的含义:javac.exe java.exe Javadoc.exe jar.exe(考试不要求)6.path和classpath的区别(考试不要求)第二章1.标识符的命名规则2.变量使用三部曲:声明,赋值,使用3.如何定义常量?4.基本数据类型(8种),占用的空间大小,给定一个常数,默认的类型,浮点数的两种表示方法5.基本数据类型的转换,向上和向下6.参数可变的方法定义(考试不要求)第三章类和对象(一)类和对象的基本概念*****1.面向对象语言的基本特点2.什么是类和对象,什么是封装性3.java中所有对象都是引用类型。
(内存分析)4.对象的创建和使用(new,.,)5.JVM内存分配,堆、栈、数据、代码(考试不要求)6.java对象生命周期,什么是gc?工作原理?好处?7.构造函数作用,定义要求。
默认构造方法和对类成员的初始化。
构造和初始化顺序(4步)。
8.对象变量的传递,值传递和引用传递9.什么是方法重载?要求是什么?和方法重写有什么区别?10.this引用的作用11.静态数据成员和静态方法成员。
静态成员和普通成员的互相访问(二)包的概念12.什么是包?如何定义包?命名规则是什么?如何使用包?哪些常用包?哪个包不显式导入就可使用?13.使用jar打包(考试不要求)(三)继承的概念*****14.什么是继承?带来的好处是什么?15.如何实现继承?子类成员和父类成员有哪三种关系?新增,重用,重写16.什么是重写?有哪些语法要求?17.super关键字的作用什么?18.子类的构造函数的执行过程。
能否继承父类?如何显式调用父类构造函数?19.类成员的可访问性。
(4个关键字)20.对象转型,向上,向下,instanceof关键字。
java期末复习题库及答案
java期末复习题库及答案一、选择题1. Java是一种()。
A. 编译型语言B. 解释型语言C. 标记语言D. 汇编语言答案:B2. Java程序的执行流程是()。
A. 编译 -> 链接 -> 执行B. 编译 -> 执行C. 编译 -> 解释 -> 执行D. 解释 -> 执行答案:C3. 下列哪个是Java的关键字?()A. classB. functionC. includeD. namespace答案:A4. Java中的类是()。
A. 抽象的B. 具体的C. 既是抽象的也是具体的D. 以上都不是答案:A5. Java中,哪个关键字用于定义一个类?()A. publicB. classC. voidD. int答案:B二、填空题1. Java语言的跨平台特性主要得益于______机制。
答案:JVM(Java虚拟机)2. 在Java中,所有的类都是继承自______类。
答案:Object3. Java中的______关键字用于定义一个方法。
答案:void 或者其他返回类型4. 在Java中,______关键字用于定义一个类是公共的。
答案:public5. Java中的______关键字用于定义一个变量是静态的。
答案:static三、简答题1. 简述Java语言的特点。
答案:Java语言具有面向对象、跨平台、健壮性、多线程、安全性、简单性等特点。
2. 什么是Java的垃圾回收机制?答案:Java的垃圾回收机制是指JVM自动检测内存中不再被使用的对象,并释放它们占用的内存资源,以防止内存泄漏。
3. 什么是Java的异常处理机制?答案:Java的异常处理机制是指程序在执行过程中,当出现错误或异常情况时,Java运行时环境提供的一种处理机制,包括try、catch、finally和throw等关键字的使用。
四、编程题1. 编写一个Java程序,实现计算两个整数的和。
java期末考试复习题及答案
java期末考试复习题及答案Java程序设计》课程试卷1.Java语言编写的源程序保存时的文件扩展名是(B).java。
2.若int a=-2,则表达式a。
3的值为(C)8.3.下列对数组元素的引用错误的是(C)a[3]。
因为数组下标从0开始,a[3]超出了数组的范围。
4.在类的定义中可以有两个同名函数,这种现象称为函数(D)重载。
5.构造函数的作用是(D)初始化成员变量。
6.下列关键字中,哪一个不是用于异常处理语句(B)break。
7.类与对象的关系是(A)类是对象的抽象。
8.下列哪一个是Java中不合法的标识符(D)*point。
9.为AB类的一个无形式参数无返回值的方法method书写方法头,使得使用类名AB作为前缀就可以调用它,该方法头的形式为(A)static void method()。
10.欲构造ArrayList类的一个实例,此类继承了List接口,下列哪个方法是正确的(C)ArrayList myList=new ArrayList()。
11.Java源文件和编译后的文件扩展名分别为(B).java和.class。
12.在Java中,如果需要在用户自定义的Applet子类中进行画图操作,一般需要重载父类的paint()方法。
13.对于一个Java源文件,正确的顺序应该是先package,再import,最后是class定义。
14.非法的代码是char c = 'u'。
因为单引号中只能包含一个字符。
15.Java语言使用的字符码集是Unicode。
16.如果一个类的成员变量只能在所在类中使用,则该成员变量必须使用private修饰。
17.正确的main方法定义应该是public static voidmain(String[] args)。
18.加互斥锁的关键字是synchronized。
19.抽象方法是没有方法体的方法,而且只能出现在抽象类中。
20.包中的File类是字节流类。
java复习期末重点考点总结
java复习期末重点考点总结一、基本语法1. 变量和常量定义变量和常量,变量的作用域,变量类型转换等。
2. 数据类型Java的基本数据类型,如整型、浮点型、字符型、布尔型等。
3. 运算符Java的运算符,如算术运算符、关系运算符、逻辑运算符、位运算符等。
4. 控制结构条件语句,如if语句、switch语句。
循环语句,如for循环、while循环、do-while循环。
5. 数组一维数组、多维数组的定义和使用。
6. 方法定义方法,方法的重载、调用以及参数传递。
7. 异常处理Java的异常处理机制,如try-catch-finally语句块。
常见的异常类及其使用。
二、面向对象1. 类和对象类和对象的定义,成员变量和成员方法的访问权限。
2. 构造方法和析构方法构造方法和析构方法的定义和使用。
3. 继承子类和父类的关系,继承的实现和使用。
方法重写和父类引用子类对象的特点。
4. 接口接口的定义和实现,接口的多继承。
多态的概念和实现,向上转型和向下转型。
6. 包包的定义和使用,包的导入和导出。
三、输入输出1. 文件操作文件的读取和写入,字符流和字节流的使用。
2. 序列化和反序列化对象的序列化和反序列化,使用序列化实现对象的存储和传输。
四、集合框架1. 集合接口和类常用集合接口和类的介绍和使用,如List、Set、Map等。
2. 迭代器集合的迭代器,实现对集合元素的遍历和操作。
3. 泛型泛型的概念和使用,泛型类和泛型方法。
4. 排序和比较使用集合框架实现元素的排序和比较。
五、线程1. 线程的创建和启动线程的创建方式,使用Thread类和Runnable接口。
2. 线程同步线程同步的方法,如使用synchronized关键字实现线程同步。
3. 线程通信线程之间的通信方式,如使用wait()、notify()、notifyAll()方法进行线程通信。
线程池的定义和使用,使用线程池实现线程的复用。
六、网络编程1. 套接字套接字的概念和使用,使用套接字实现网络通信。
大学java期末试题及答案
大学java期末试题及答案一、选择题(每题2分,共20分)1. Java中,下列哪个关键字用于声明一个类?A. classB. interfaceC. publicD. private2. 下列哪个选项是Java中的一个基本数据类型?A. StringB. IntegerC. intD. Boolean3. 在Java中,哪个方法用于获取数组的长度?A. length()B. size()C. getLength()D. count()4. Java中,下列哪个关键字用于捕获异常?A. tryB. catchC. throwD. finally5. 下列哪个选项是Java中的集合框架接口?A. ListB. ArrayListC. LinkedListD. All of the above6. 在Java中,下列哪个关键字用于实现多态?A. extendsB. implementsC. overrideD. abstract7. 下列哪个选项是Java中用于创建线程的方法?A. start()B. run()C. thread()D. All of the above8. 在Java中,下列哪个关键字用于声明接口?A. classB. interfaceC. abstractD. final9. 下列哪个选项是Java中用于创建对象的关键字?A. newB. createC. makeD. instantiate10. 在Java中,下列哪个关键字用于声明一个方法?A. methodB. functionD. void二、填空题(每题2分,共20分)1. Java语言是_________语言,它允许跨平台运行。
2. 在Java中,所有的类都是_________类的子类。
3. Java中,_________关键字用于声明一个方法可以被子类重写。
4. Java中,_________关键字用于声明一个类不能被继承。
java期末试题及答案
java期末试题及答案一、选择题(每题2分,共20分)1. Java语言的特点是______。
A. 面向过程B. 面向对象C. 编译型语言D. 解释型语言答案:B、C2. 下列哪个是Java的基本数据类型?A. StringB. intC. ArrayListD. Object答案:B3. 在Java中,哪个关键字用于定义类?A. classB. interfaceC. packageD. import答案:A4. Java中的异常处理是通过哪两个关键字实现的?A. try、catchB. if、elseC. switch、caseD. while、do-while答案:A5. 下列哪个不是Java集合框架中的一部分?A. ListB. SetC. MapD. Queue答案:D6. Java中的main方法的返回类型是什么?A. intB. voidC. StringD. Object答案:B7. 在Java中,哪个类提供了对文件的输入输出操作?A. java.io.FileB. java.io.FileInputStreamC. java.io.FileOutputStreamD. java.io.FileReader答案:A8. 下列哪个是Java中的多线程实现方式?A. 继承Thread类B. 实现Runnable接口C. 使用Timer类D. 所有选项答案:D9. Java中,哪个关键字用于实现接口?A. implementsB. extendsC. abstractD. final答案:A10. 下列哪个是Java的访问修饰符?A. privateB. publicC. protectedD. 所有选项答案:D二、填空题(每空2分,共20分)1. Java语言的跨平台特性主要得益于______机制。
答案:JVM(Java虚拟机)2. Java语言中,______关键字用于定义一个方法的返回类型。
JAVA期末复习题
JA V A期末复习题一、判断题。
1.Java语言是平台无关的语言。
T2.类的静态方法中可以访问该类的非静态数据成员.F3.Java中方法调用时参数传递都是按值传递的,因此从方法中退出时,参数的值是不会变的。
T4.覆盖方法所抛出的异常不能比原方法更多。
T5.Final 方法不能被覆盖。
T6.抽象类中一定包含抽象方法。
F7.接口中的方法必须是抽象方法。
T8.在方法定义中,所以可能发生的异常都必须用try{} catch(){}捕捉。
F9.Java支持多重继承。
F10.Final修饰的类不能派生子类。
T11.覆盖的同名方法中,子类方法不能比父类方法的访问权限更严格。
T12.不能在静态方法中使用13.抽象类中不能创建对象。
T14.一个类可以实现多接口。
T15.接口中可以包含非静态成员。
F16.不论是否捕捉到异常try{}catch(){} final{}语句中finally块中的代码总要被执行。
T17.一个类实现一个接口,则该类必须实现接口中的所有方法。
F18.线程使用sleep方法去休眠后可以使用notify方法唤醒。
F19.线程使用sleep方法休眠是会释放该线程同步锁定的对象。
F20.Final类中的属性和方法都必须是final的。
F二、选择题1、Java中复合数据类型不包括(D)2、请从四个选项中选择答案,下列代码的执行结果是:(C)Public class Test{Public static void main(String args[]){Float t=;Int q=6;System.out.println((t++)*(--q));}}A.40B.40.0 C3、下列关于修饰符混用的说法,错误的是(D)A.abstract 不能与final 并列修饰同一个类B.abstract类中可以有非abstract的方法C.普通类(非abstract类)中不能有abstract方法D.static方法中能处理非static的属性4、关于被保护访问控制符protected修饰的成员变量,以下说法正确的是(A)A.可以被该类自身、与它在同一个包中的其它类、在其它包中的该类的子类所访问B.只能被该类本身和该类的所有的子类访问C.只能被该类自身所访问D.只能被同一个包中的类访问5、x=2,y=3,z=4,则表达式z*=y++*--x的值是(A)A.12B.24 C6、以下赋值语句正确的是(D)A.char c1=”a”B.float f1=3.22C.byte b1=266D.long L1=0xAC8L7、Java不支持多重继承,但我们可以通过(B)实现8.已知类person是类student的父类,以下数组定义和赋值哪些是正确的(A)A. person p[]=new person[3]; p[1]=new student();B .student s[]=new person[3]; s[1]=new person();C .person p[]= new student[3];p[1]= new person();D .student s[]=new student[3];s[1]=new person;9 编译之后,得到了三个字节码文件:MyClass.class , MyClasslittle$.class MyClass$1.class.这表明(C)A.MyClass类中的两个方法:little和1B. MyClass.Java中有三个类:MyClass、little和1C. MyClass类中有两个内部类:一个是命名的little,另一个是匿名的1D. MyClass、little和1,这三者没什么关系10、main 方法是java Application 程序执行的入口点,关于main方法的方法头以下(B)是合法的。
java期末考试题试题库及答案
java期末考试题试题库及答案一、选择题1. Java语言是一种:A. 编译型语言B. 解释型语言C. 编译解释型语言D. 汇编语言答案:C2. 下列哪个关键字用于定义Java接口?A. classB. interfaceC. abstractD. package答案:B3. 在Java中,哪个类是所有Java类的根类?A. ObjectB. StringC. SystemD. Main答案:A4. Java中的线程同步机制是通过哪个关键字实现的?A. synchronizedB. volatileC. finalD. static答案:A5. 下列哪个不是Java集合框架中的一部分?A. ListB. SetC. MapD. Queue答案:D二、填空题6. Java语言的跨平台特性主要得益于______机制。
答案:JVM(Java虚拟机)7. 在Java中,______关键字用于定义一个方法不能被重写。
答案:final8. Java的异常处理机制中,______类是所有异常的超类。
答案:Throwable9. Java中的______关键字用于声明一个变量,其值在初始化后不能被改变。
答案:final10. 一个Java程序的入口点是______方法。
答案:main三、简答题11. 简述Java中接口和抽象类的区别。
答案:接口定义了一组方法规范,不包含实现,可以被任何类实现,而抽象类可以包含方法实现,并且可以被其他类继承。
接口不能有构造方法,而抽象类可以有。
接口中的方法默认是public和abstract的,而抽象类中可以有public、private等访问修饰符。
12. 描述Java中异常处理的机制。
答案:Java的异常处理机制包括try、catch、finally和throw 关键字。
try块用于包含可能抛出异常的代码,catch块用于捕获并处理异常,finally块用于执行无论是否发生异常都需要执行的代码。
Java期末复习要点
Java期末复习要点
1.Java的继承性属于单继承,可以使用接口来实现多继承
2.定义一个子类并给他声明一个父类使用的关键字。
3.Java标识符的定义规范
4.实现线程的两种方法
5.Java中变量的三个要素
6.List的两种实现类以及使用前提
7.各集合使用的存储方式及存储特点
8.所有字节流输入与输出的父类。
9.文件与目录的描述类-File,掌握基本常用的方法
10.读取特定文件信息及写入信息到指定文件的操作
11.定义构造方法的特点
12.Java的基本数据类型有哪些?
13.多态的两种形式,重载与覆盖
14.接口抽象类的特点
15.强制类型转换的特点与方法
16.继承的特点,子类可以访问父类的哪些或哪类成员
17.数组中的length属性和字符串中的length()方法
18.JDBC数据库连接SQL 2005的连接步骤
19.掌握Collection、Statement、ResultSet类的作用
20.掌握扫描输入类Scanner的使用
21.Java的三种基本流程控制结构。
java期末复习题库及答案
java期末复习题库及答案Java期末复习题库及答案一、选择题1. Java是一种()。
A. 编译型语言B. 解释型语言C. 标记语言D. 汇编语言答案:B2. 下列哪个是Java的基本数据类型?A. StringB. IntegerC. intD. ArrayList答案:C3. 以下哪个是Java的关键字?A. ObjectB. ClassC. publicD. String答案:C4. Java中的main方法必须声明为()。
A. public static voidB. private static voidC. public static intD. protected static void答案:A5. 以下哪个是Java的访问控制修饰符?A. privateB. staticC. abstractD. final答案:A二、填空题6. Java语言的跨平台特性是通过______实现的。
答案:JVM(Java虚拟机)7. 在Java中,一个类可以有多个构造方法,只要它们的______不同。
答案:参数列表8. 接口(interface)在Java中不能包含______。
答案:实现9. Java中,final关键字可以用来修饰类、方法和变量,表示它们是______。
答案:不可变的10. 异常处理是通过try、catch和______块来实现的。
答案:finally三、简答题11. 简述Java的垃圾回收机制。
答案:Java的垃圾回收机制是指Java运行时环境自动释放不再使用的对象所占用的内存。
当一个对象没有任何引用指向它时,它就成为了垃圾回收的候选对象。
垃圾回收器会在适当的时候自动执行回收操作,释放内存资源。
12. 描述Java中多态的概念及其实现方式。
答案:多态是指允许不同类的对象对同一消息做出响应的能力,即同一个接口可以被不同的实例以不同的方式实现。
在Java中,多态主要通过继承和接口实现。
java期末复习题含答案及详解
一、选择题(共20分)1.下列输出结果是()int a = 0 ;while ( a < 5 ) {switch(a){case 0:case 3 : a = a + 2;case 1 :case 2 : a = a + 3;default : a = a + 5; }}System.out.print ( a ) ;答案:10解析:由于每个case后面没有使用break结束循环,导致程序从上往下逐条运行。
2.被声明为private,protected及public的类成员,在类外部()A)只能访问到声明为protected和public的成员B)都可以访问C)只能访问声明为public的成员D)都不能访问答案:A解析:private只能被类内部访问,子类(未在父类内部)可以访问父类protected类型成员,其他类可以访问其public类型成员。
3.在Java语言中,下列关于类的继承的描述,正确的是()。
A)一个类可以继承多个父类B)一个类可以具有多个子类C)子类可以使用父类的所有方法D)子类一定比父类有更多的成员方法答案:B解析:A错,一个类只能有一个父类;C错,父类的私有方法就不可被子类访问并使用;D错,继承关系是对父类功能的扩展,根据实际情况完全可以只扩展1个功能,并不意味着成员方法比父类多。
4.类Teacher和Student都是类People的子类People p;Teacher t;Student s;若p,t和s都是非空值,并且new时声明的都是本类;if(t instanceof People) { s = (Student)t; }这个语句导致的结果是什么?()A) 表达式合法B) 编译时非法C) 将构造一个Student对象D) 编译时合法而在运行时可能非法答案:B解析:instanceof操作符用于判断左边的引用对象是否是右边的类,或者其子类、实现类的实例。
此题中的if语句的判断没有问题,将返回真。
JAVA期末复习题
一、单选题1、下面关于变量及其作用范围的陈述哪个是不对的?()A.实例变量是类的成员变量。
B.实例变量用关键字static声明。
//Static 声明的是类变量C.在方法中定义的局部变量在该方法被执行时创建。
D.局部变量在使用前必须被初始化。
2、下面哪条语句把方法声明为抽象的公共方法?()A.public abstract method();B.public abstract void method();C.public abstract void method(){}D.public void method() extends abstract;3、哪个是将一个十六进制值赋值给一个long型变量?()A.long number = 345L;B.long number = 0345;C.long number = 0345L;D.long number = 0x345L;4、下面的哪个赋值语句是不对的?()A.float f = 11.1;B.double d = 5.3E12;C.double d = 3.14159;D.double d = 3.14D;5、下面哪个是不合法的标识符?()A.$persons;B.TwoUsers;C.*point;D._endline;6、若在某一个类定义中定义有如下的方法:final void aFinalFunction( );则该方法属于()。
A、本地方法B、静态方法C、最终方法D、抽象方法7、main方法是Java Application程序执行的入口点,关于main方法的方法头以下哪项是合法的()。
A、public static void main()B、public static void main(String[ ] args)C、public static int main(String[ ] args)D、public void main(String arg[ ])8、在Java中,一个类可同时定义许多同名的方法,这些方法的形式参数个数、类型或顺序各不相同,传回的值也可以不相同。
java期末考试复习资料
复习:一,选择题(1)Java中,负责对字节代码解释执行的是(C)A:垃圾回收器B:虚拟机C:编译器D:多线程机制(2)下列叙述中,正确的是(A)A:Java语言的标识符是区分大小写的B:源文件名与public类名可以不相同C:源文件名其扩展名为.jarD:源文件中public类的数目不限(3)下列语句中,错误的Java语句是(C)A:连续出现多个分号B:try......catch语句C:include语句D:switch语句(4)在Java程序中,已将FileWriter对象接到BufferedWriter对象上,要实现缓冲式输出,可对BufferedWriter对象使用的方法是(B)A:read()B:write()C:readLine()D:writeLong()(5)接口的所有变量和方法分别默认为是(A)A:final static和public abstractB:final static和public finalC:public static和public abstractD:public static和public final(6)当线程A使用某个对象,而此对象又需要线程B修改后才能符合A线程的需要,这时线程A就要等待线程B完成修改工作,这种现象称为(A)A:线程的同步B:线程的互斥C:线程的调度D:线程的就绪(7)在Java程序中,已将FileWriter对象接到BufferedWriter对象上,要实现缓冲式输出,可对BufferedWriter对象使用的方法是(B)A:read()B:write()C:readLine()D:writeLong()(8)下列有关数组的叙述错误的是(D)A:数组是将一组相同类型的数据顺序存储,组成一种复合数据类型B:在Java语言中,数组是一种引用类型,数组名如同对象名一样,是一种引用C:对于多维数组,从最高维开始,可以对每一维分配不等长的空间D:在Java语言中,数组元素可以互相赋值,而数组名不能直接赋值(9)下列有关Java的叙述错误的是(D)A:强类型语言B:与平台无关C:可以使用汉字变量名D:不检查数组下标越界(10)一个实现Runnable接口的类必须要实现的方法是(B)A:start()B:run()C:sleep()D:init()(11)在 Java 中,表示换行符的转义字符是(A)A:‘\n’B:BC:CD:D(12)能够支持 javadoc 命令的文档注释形式是(D)A:/**...//B:/*...*/C://D:/**...*/(13)当使用FileInputStream类中的read()方法时,如果没有读入一个字节数据时,返回值为(B)A:0B:-1C:trueD:false(14)下列正确的句子是(D)A:float 3.14;B:byte i=225;C:int k=33L;D:int p[][];(15)按运算符操作数的数目划分,运算符?:的类型是(A)A:三目B:双目C:四目D:单目(16)有关在Java中定义实例方法和类方法的叙述正确的是(D)A:前者有public修饰,后者没有public修饰B:前者没有public修饰,后者有public修饰C:前者有static修饰,后者没有static修饰D:前者没有static修饰,后者有static修饰(17)有Java语句如下,则说法正确的是(C)int []a,b=new int[3];A:此语句是错误的B:a.length的值为3C:b.length的值为3D:a.length和b.length的值都为3(18)如果发生多个线程形成一个等待环,这样,所有线程都陷入相互等待的状态。
JAVA期末复习和答案
Java期末复习题一、选择题:1、所谓数据封装就是将一组数据和与这组数据有关操作组装在一起,形成一个实体,这实体也就是 ? (B) ? ?A. ? 类 ? ?B. ? 对象 ? ? ?? ? ?C. ? 函数体 ? ? ? ? ? ? ? ?D. ? 数据块 ? ?2、定义一个不能被继承的名为Abc的类的正确方法是(E)A.class Abc{} B.native class Abc{}C.abstract final class Abc{} D.class Abc{final;} E.final class Abc{} 3、若要生成ClassA类的一个对象a,以下书写正确的是(A)a=new ClassA(); a=new Class();=new ClassA(); a=ClassA();4、类的构造函数被自动调用执行的情况是在定义该类的 ?(c) ? ?A. ? 成员函数时 ??B. ? 数据成员时C. ? 对象时 ?? ?D. ? 构造函数时5、编译运行下面程序时有何种结果?请选择一个正确的答案(A)class Test{public static void main(){"hello");}}A.程序不能编译,因为main()方法定义不正确。
B.程序能编译,但不能运行,因为class未声明为public的。
C.程序能无错地编译并运行,但运行时将产生异常。
D.程序运行时显示“hello”。
6、关于抽象方法的说法正确的一项是(A)A、可以有方法体B、可以出现在非抽象类中C、抽象方法是没有方法体的方法D、抽象类中的方法都是抽象方法7、假定AB为一个类,则执行AB x=new AB( );语句时将自动调用该类的(B) ? A.有形参构造函数 ?B.无形参构造函数 ? ? C.其他成员函数 ? ?? D.重载函数 ? 8、编译并运行如下程序后,结果是什么?请在给出的选项中选择出正确的答案(E)class Array{public static void main(String[] args){int length=100;int[] d=new int[length];for(int index=0;index<length;index++)}}A.因为int[]数组声明不正确,程序不能被编译。
JAVA期末复习资料
一、单选题1.下列不可作为java语言修饰符的是( D )A) a1 B) $1 C) _1 D) 112.有一段java 应用程序,它的主类名是a1,那么保存它的源文件名可以是( A )A) a1.java B) a1.class C) a1 D) 都对3.整型数据类型中,需要内存空间最少的是( D )A) short B) long C) int D) byte4. Java中( C )A) 一个子类可以有多个父类,一个父类也可以有多个子类B) 一个子类可以有多个父类,但一个父类只可以有一个子类C) 一个子类可以有一个父类,但一个父类可以有多个子类D) 上述说法都不对5.下列哪些语句关于Java内存回收的说明是正确的。
( B )A.程序员必须创建一个线程来释放内存B. 内存回收程序负责释放无用内存C. 内存回收程序允许程序员直接释放内存D. 内存回收程序可以在指定的时间释放内存对象6.下面的哪个赋值语句是不对的? ( A )A.float f = 11.1; B.double d = 5.3E12;C.double d = 3.14159; D.double d = 3.14D;7.以下由do-while语句构成的循环执行的次数是( B )。
int k=0;do { ++k; }while ( k < 1 );A.一次也不执行B.执行1次C.无限次D.有语法错,不能执行8.若有定义Sting jerry="I love Tom",s1;则s1=jerry.substring(2)的值为( C)A. lB. loveC. love TomD. Tom9. 类的设计要求它的某个成员变量不能被外部类直接访问,应该使用下面的哪些修饰符获得需要的访问控制( D )A publicB defaultC protectedD private10.在异常处理中,如释放资源、关闭文件、关闭数据库等由( C )来完成。
java期末复习题
B. PreparedStatement
C. CallableStatement
D. procedureStatement
标准答案: C
8.关键字super和this说法不正确的是_______
A. super(..)方法可以放在this(..)方法前面使用
B. this (..)方法可以放在super (..)方法前面使用
空1: a.length
空2: <Integer>
空3: int i : a
空4: al.get(i)
20.下列代码用于完成以下功能:
1、构造长度为10的整数数组,并填充数字1到10;
2、采用前后交换的方式将数组逆序,即第1个元素和最后一个元素交换,第2个元素和倒数第二个元素交
换....;
空1:逻辑
19.下列代码完成以下功能:
1、在长度为10的数组a中存储从0开始的前10个偶数;
2、将数组a中的整数保存到一个ArrayList中;
3、将ArrayList中的整数倒序输出。
请补齐代码。
int[] a = new int[10];
for (int i = 0; i < ________; i++)
13. Java中的注释可分为行注释、块注释、________
空1:文档注释
14.在Java语言中,运算符分为算术运算符、比较运算符、________、位运算符、________、条件运算符等几
类。
空1:逻辑运算符
空2:赋值运算符
15.一个类可以使用________关键字可以实现多个接口,接口之间使用________进行间隔。
java期末复习试卷含答案
选择题1.Java application中的主类需包含main方法,以下哪项是main方法的正确形参?〔 B 〕A、String argsB、String args[]C、Char argD、StringBuffer args[]2.以下的哪个选项可以正确用以表示八进制值8?〔 D 〕A〕0*8 B〕0*10 C〕08 D〕0105.Java Applet在被浏览器加载的时候首先被执行且在applet整个生命周期中只被运行一次的方法是〔 A 〕?A、init()B、start()C、opreationcrawl()D、reader()6.在浏览器中执行applet 程序,以下选项中的哪个方法将被最先执行〔 A 〕。
A、init()B、start()C、destroy()D、stop()9.类Parent、Child定义如下:1.public class Parent2.{ public float aFun(float a, float b) throws3. IOE*ception { }4.}5.public class Child e*tends Parent{6.7.}将以下哪种方法插入行6是不合法的。
〔 A 〕A、float aFun(float a, float b){ }B、public int aFun(int a, int b)throws E*ception{ }C、public float aFun(float p, float q){ }D、public int aFun(int a, int b)throws IOE*ception{ }10.给出下面代码,关于该程序以下哪个说法是正确的?〔 C 〕public class Person{static int arr[] = new int[5];public static void main(String a[]){System.out.println(arr[0]);}}A、编译时将产生错误B、编译时正确,运行时将产生错误C、输出零D、输出空11.在编写Java Applet程序时,需在程序的开头写上( B )语句。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
第一章1、public class Hello{public static void main(String args[ ]){System.out.println("Hello world!");}}错误:未进行编译2、java的可移植性:移植到不同的操作系统上。
第二章1、引用数据类型:类、接口、数组。
2、length的使用例如:double number[ ]=new double[15];//number.length的值是15int [ ][ ]xx=new int[3][4];//xx.length=3,xx[0].length=43、数组的引用int []a={1,2,3},b={4,5};令a=b,则a={4,5},b={4,5}4、数组的初始化静态初始化格式:数据类型数组名[ ] = {初值0 , 初值1 , … , 初值n}。
例如:float boy[]={21.3f,23.89f,2.0f,23f,778.98f};动态初始化:程序员指定数组长度,但不直接为数组元素分配初值。
例如:float boy[]= new float[5];注意:动态初始化和静态初始化不能同时进行。
例如:float boy[]= new float[5] {21.3f,23.89f,2.0f,23f,778.98f}是错误的写法5、public class CommandParam{public static void main(String args[ ]){int i=Integer.parseInt(args[0]); //接受键盘键入的数int j=Integer.parseInt(args[1]); //接受键盘键入的数int sum=i+j;System.out.println("The numbers are : "+i+"and"+j);System.out.println("The sum is: "+sum);}}第三章1、整型/整型=整型例如;7/3=22、switch开关语句switch 语句是多分支的开关语句,它的一般格式定义如下:switch(表达式){case 常量值1:若干个语句break;case 常量值2:若干个语句break;………case 常量值n:若干个语句break;[default:若干语句]}switch后面括号中表达式的值不能用浮点类型或long类型例:public class SwitchOp1{public static void main(String args[]){float a=9;float b=3;float result=0;char op='+';switch(op){case '+': result=a+b;case '-': result=a-b;case '*': r esult=a*b;case '/': result=a/b;default: result=0;}System.out.println("result="+result); }}运行结果如下:public class SwitchOp2{public static void main(String args[]){float a=9;float b=3;float result;char op='+';switch(op){case '+': result=a+b; break;case '-': result=a-b; break;case '*': r esult=a*b; break;case '/': result=a/b; break;default: result=0;}System.out.println("result="+result);}}运行结果如下:3、例如,x的初值是1,那么语句:((y=1)==0)&&((x=6)==6);中的x值仍是1。
((y=1)==0)&((x=6)==6);中的x值是6。
4、右移位运算的符号为:>>。
并用0或1填充左边的高位,a是正数用0填充,负数时用1填充运算符>>>同样是执行一个右移位,只是它执行的是不带符号的右移。
在不带符号的右移中,右移后左边留下的空位中添入的一律是0。
左移位运算的符号为:<<。
并用0填充右边的低位。
5.下列System.out.printf语句的输出结果是什么?Int a[]={3,4,1,2,-6};For(int i=0;i<a.length;i++){For(int j=i+1;j<a.length;j++){If(a[j]<a[i]){Int n=a[j];a[j]=a[i];a[i]=n;}}}System.out.printf(“%d,%d,%d,%d,%d”,a[0],a[1],a[2],a[3],a[4]);结果如下-6,1,2,3,4第四章1、方法使用:(1)构造方法是一种特殊方法,它的名字必须与它所在的类的名字完全相同,并且不返回任何数据类型(无void,没有类型,无return)。
构造方法可重载(2)静态变量或类变量在内存空间里只有一份(3)静态成员使用时除了可以用对象名表示外还可用类直接使用如:class ChineseChinese.countryChinese ch1 = new Chinese();ch1.country2、静态代码块class StaticCode{static String country;{System.out.println("aaa");}static{country = "China";System.out.println("StaticCode is loading");}StaticCode( ) {System.out.println("Constructor is calling.");}}class TestStaticCode{static{System.out.println("TestStaticCode is loading");}public static void main(String[ ] args){new StaticCode( );new StaticCode( );}运行结果如下:3、单态设计模式class Chinese{private static Chinese objRef = new Chinese( );private static int count = 0;String name;int age;private Chinese( ){System.out.println(++count);}public static Chinese getInstance( ){return objRef;}}class TestChinese{public static void main(String [ ] args){Chinese obj1 = Chinese.getInstance( );Chinese obj2 = Chinese. getInstance( );System.out.println(obj1==obj2);}4、现有重载方法:public void info(String name, double count) public void info(String name, int count)5、this作用(1)public class Person{String name;int age;Person(String name){ = name;}Person(String name , int age){this(name);this.age = age;}将屏蔽的成员变量用this表示(2)在一个构造方法里调用其他重载的构造方法6、包-d指定生成的字节码文件所在的目录如果源文件没有包名,使用参数-d可以将字节码文件存放到你指定的有效目录中,例如:javac –d F:\tsinghua\1000 MyFile.java将源文件MyFile.java生成的全部字节码文件存放到F:\tsinghua\1000。
使用import语句可以引入包中的类ng可不用import语句引入包中的类7、装箱、拆箱public class WrapperDemo03 {public static void main(String[] args) {Integer i = 30 ; // 自动装箱成IntegerFloat f = 30.3f ; // 自动装箱成Floatint x = i ; // 自动拆箱为intfloat y = f ; // 自动拆箱为float}}8、构造块优先于构造方法被执行第五章1、java不支持多重继承,只支持单继承2、super的作用:(1)子类使用super调用父类的构造方法注:必须是子类构造方法中的头一条语句(2)子类使用super调用被子类隐藏的成员变量和方法(3)调用父类中被重写的方法3、子类的构造过程Student(){构造子类的父类部分再构造子类的新增部分}4、final类适用场合:(1)用于修饰类,不能被继承(2)修饰方法,方法不能重写(3)修饰变量,变为常量5、上转型对象private int n=40;void crySpeak(String s) {System.out.println(s);}}public class Monkey extends Mammal{void compute(int aa,int bb) {int cc=aa*bb;System.out.println(cc);}void crySpeak(String s) {System.out.println("**"+s+"**");}public static void main(String args[ ]){Mammal mammal=new Monkey( );// mammal是Monkey类对象的上转型对象mammal.crySpeak("I love this game");Monkey monkey=(Monkey)mammal;//把上转型对象强制转化为子类的对象pute(10,10);}}例:class A{double n;int m;void f(){System.out.printf("子类继承方法f(),n=%f,m=%d\n",n,m);}void g(){System.out.printf("你好,n=%f,m=%d\n",n,m);}}class B extends A{int n=12;void g(){System.out.printf("子类重写方法g(),n=%d,m=%d\n",n,m);}void cry(){System.out.printf("子类新增的方法,n=%d,m=%d\n",n,m);}}public class Example5_8{public static void main(String args[]){A a;a=new B();a.n=0.618;a.m=200;a.f();a.g();B b=(B)a;b.n=555;b.cry();}}运行结果如下:6.构造方法不被继承7.抽象类和抽象方法Java语言中,用abstract关键字来修饰一个类时,这个类叫做抽象类。