Java面向对象程序设计复习题附复习资料
面向对象程序设计Java总复习

类的定义与实例化
类的定义
使用`class`关键字定义一个类, 包括属性和方法。
实例化
通过使用`new`关键字创建类的实 例(对象)。
封装与继承
封装
通过使用访问修饰符(如`private`) 来控制属性和方法的访问权限,实现 信息的隐藏和安全。
继承
通过使用`extends`关键字实现,子类 继承父类的属性和方法,并可以添加 或覆盖父类的方法。
Statement和 PreparedStatement:用于执 行SQL语句,Statement用于
执行静态SQL语句, PreparedStatement用于执行
动态SQL语句。
ResultSet:用于获取查询结果 集,可以通过ResultSet对象获 取查询结果中的数据。
04
Java设计模式
应用场景
需要根据不同情况选择不同算法的场景,如排序算法、 加密算法等。
05
Java高级特性
注解和反射
注解(Annotation)
注解是Java提供的一种元数据机制,用于为代码添加元信息。注解本身不改变程序的行为,但可以通 过反射机制在运行时被读取和处理。
反射(Reflection)
反射是Java提供的一种机制,可以在运行时动态地获取类的信息,并创建、操作对象。反射常用于实 现框架、插件等可扩展性强的应用。
异常处理
异常分类
Java中的异常分为检查型异常(Checked Exceptions)和非检查型异常(Unchecked Exceptions)。
try-catch语句
try-catch语句用于捕获和处理异常,try块包含可能抛出异常的代码,catch块包含处理异常的代 码。
《面向对象程序设计JAVA语言程序设计》期末复习试题及部分答案

一、单选题1.在下列概念中,Java语言只保留了DA.运算符重载B.结构和联合C.指针D.方法重载2.下列类定义中,不正确的是BA.class x { .... } B.static class x implements y1,y2 { .... }C.public class x extends Applet { .... } D.class x extends y { .... } 3.下列语句序列执行后,k 的值是Bint m=3, n=6, k=0;while( (m++) < (- - n) ) ++k;i++先把i的初值赋给表达式(i++),作为表达式(i++)的值,然后i自增1作为i的值。
如i=1,则表达式(i++)的值等于1,而i的值变为2。
++ii先自增1,再把自增后的值赋给表达式(++i)。
如i=1,则表达式(++i)的值等于2,i的值也为2,A.0 B.1 C.2 D.34.设i、j为int型变量名,a为int型数组名,以下选项中,正确的赋值语句是AA.a[0] = 7; B.i = i + 2 C.i++ - --j; D.a(0) = 66;5.Java语言的类间的继承关系是BA.多重的B.单重的C.线程的D.不能继承6.下列语句序列执行后,k 的值是Cint i=10, j=18, k=30;switch( j - i ) {case 8 : k++;case 9 : k+=2;case 10: k+=3;default : k/=j;}A.31 B.3 C.2 D.337.设有定义 float x=3.5f, y=4.6f, z=5.7f;则以下的表达式中,值为true的是CA.x > y || x > z B.z > ( y + x ) C.x != y D.x < y & ! ( x < z )8.下列修饰符中,定义类头时能使用的修饰符是CA.private B.static C.abstract D.protected 9.设i、j、k为类x中定义的int型变量名,下列类x的构造函数中不正确的是BA.x( int m){ ... } B.void x( int m){ ... }C.x( int m, int n){ ... } D.x( int h,int m,int n){ ... } 10.下列对封装性的描述中,错误的是 DA.封装体包含了属性和行为B.封装使得抽象的数据类型提高了可重用性C.被封装的某些信息在封装体外是不可见的D.封装体中的属性和行为的访问权限是相同的11.下列关于包的描述中,错误的是BA.包是若干个类的集合B.包是一种特殊的类型C.包是使用package语句创建的D.包有有名包和无名包两种12.下列关于Applet程序的描述中,错误的是 CA.Applet程序的主类必须是Applet类得子类B.Applet不是完整的独立程序C.Applet程序的主类中应有一个main()方法D.Applet的字节码文件必须嵌套在一个HTML文件中13.下列界面元素中,不是容器的是CA. Dialog B.Frame C.List D.Panel14.下列关于异常处理的描述中,错误的是DA.程序运行时异常由Java虚拟机自动进行处理B.使用try-catch-finally语句捕获异常C.使用throw语句抛出异常D.捕获到的异常只能在当前方法中处理,不能在其他方法中处理15.以下方法不属于迭代器(Iterator)接口所定义的方法的是DA.hasNext()B.next()C.remove()D.nextElement()16.主线程属于(C )A.守护线程B.Thread线程C.用户线程D.Runnable线程二、填空题1.三目运算符的3个操作数中,第一个操作数的类型必须是逻辑型的。
面向对象程序设计Java复习题

面向对象程序设计Java复习要求一、单选题1、当线程进行调度使其暂停时,暂停的时间单位是( B )A、毫秒B、秒C、分钟D、小时2、在java中和数据库连接的机制是( A )A、JDBCB、CORBAC、自定义D、ODBC3、下列选项中不属于Java虚拟机的执行特点的一项是(D )。
A、异常处理B、多线程C、动态链接D、简单易学4、下列选项中属于Java语言的垃圾回收机制的一项是( D )。
A、语法检查B、堆栈溢出检查C、跨平台D、内存跟踪5、下列选项中属于Java语言的安全性的一项是( C )。
A、动态链接B、高性能C、访问权限D、内存跟踪6、下列选项中,属丁JVM执行过程中的特点的一项是( C )。
A、编译执行B、多进程C、异常处理D、静态链接7、在Java语言中,那一个是最基本的元素?( C )A、方法B、包C、对象D、接口8、如果有2个类A和B,A类基于B类,则下列描述中正确的一个是( B )。
A、这2个类都是子类或者超类B、A是B超类的子类C、B是A超类的子类D、这2个类都是对方的子类9、使用如下哪个保留字可以使只有在定义该类的包中的其他类才能访问该类?(D )A、abstractB、privateC、protectedD、不使用保留字10、编译一个定义了3个类和10个办法的Java源文件后,会产生多少个字符码文件,扩展名是什么?(D )A、13个字节码文件,扩展名是.classB、1个字节码文件,扩展名是.classC、3个字节码文件,扩展名是.javaD、3个字节码文件,扩展名是.class11、下列说法正确的一项是( C )。
A、java.1ang.Integer是接口B、java.1ang.Runnable是类C、Doulble对象在iava.1ang包中D、Double对象在java.1ang.Object包中12、下列关于类、包和源文件的说法中,错误的一项是( D )。
A、一个文件可以属于一个包B、一个包可包含多个文件C、一个类可以属于一个包D、一个包只能含有一个类13、以下关于面向对象概念的描述中,不正确的一项是( B )。
java程序设计基础复习题

java程序设计基础复习题Java程序设计基础复习题一、Java基础知识1. Java语言的特点:- 简单性- 面向对象- 可移植性- 健壮性- 多线程- 动态性2. Java的基本数据类型及其取值范围:- 整型:byte, short, int, long- 浮点型:float, double- 字符型:char- 布尔型:boolean3. Java的变量作用域:- 局部变量- 成员变量- 类变量(静态变量)4. Java的控制语句:- 条件语句:if, switch- 循环语句:for, while, do-while5. Java的数组:- 一维数组- 多维数组- 数组的初始化和遍历6. Java的字符串处理:- 字符串的创建- 字符串的常用方法(如equals, length, substring等)二、面向对象编程1. 类和对象的概念:- 类的定义- 对象的创建和使用2. 构造方法:- 构造方法的作用- 重载构造方法3. 封装:- 私有成员- 公共访问器和修改器4. 继承:- 继承的概念- 访问控制和继承的关系5. 多态:- 方法重载- 方法重写- 接口和抽象类6. 接口和抽象类:- 接口的定义和实现 - 抽象类的特点三、Java集合框架1. 集合框架的基本概念: - 集合(Collection) - 映射(Map)2. List接口及其实现: - ArrayList- LinkedList3. Set接口及其实现:- HashSet- TreeSet4. Map接口及其实现:- HashMap- TreeMap5. 迭代器(Iterator): - 迭代器的使用6. 泛型:- 泛型的概念- 泛型在集合中的使用四、异常处理1. 异常的分类:- 编译时异常- 运行时异常2. 异常处理机制:- try-catch- finally- throws3. 自定义异常:- 自定义异常类的定义4. 异常链:- 异常链的概念- 异常链的使用五、输入输出(I/O)流1. Java I/O流的分类: - 字节流- 字符流2. 字节流:- InputStream- OutputStream3. 字符流:- Reader- Writer4. 文件操作:- 文件的创建和删除 - 文件的读写操作5. 缓冲流:- BufferedInputStream - BufferedOutputStream6. 数据流:- DataInputStream- DataOutputStream六、Java多线程1. 线程的概念:- 线程的生命周期- 线程的创建和启动2. 线程同步:- 同步方法- 同步代码块3. 线程通信:- wait()- notify()- notifyAll()4. 线程池:- 线程池的概念- 使用Executor框架5. 并发工具类:- CountDownLatch- CyclicBarrier- Semaphore七、Java网络编程1. 网络编程基础:- IP地址- 端口号2. URL和URLConnection:- URL的使用- URLConnection的使用3. 套接字编程:- ServerSocket- Socket4. 多线程服务器:- 使用线程处理客户端请求八、Java数据库连接(JDBC)1. JDBC的概念:- JDBC的工作原理2. 数据库连接:- DriverManager- Connection3. 执行SQL语句:- Statement- PreparedStatement4. 结果集处理:- ResultSet5. 事务处理:- 事务的概念- 事务的隔离级别九、Java Web基础1. Servlet:- Servlet。
Java面向对象程序设计复习题附复习资料

A、 B、 C、 D、
5、在接口中方法正确的是( A )。
A、 ()
B、 ()
C、 ()
D、 ()
6、下面是一些异常类的层次关系
假设有一个方法X,能够抛出两个异常, 和 异常,假定方法X中没有-语句,下面哪个答案是正确的。( B )
A、方法X应该声明抛弃和
A、
B、
C、
D、
18、下列哪个方法用于创建并开始一个新的线程( B )。
A、();
B、();
C、();
D、( r);
19、如果有 (“”),则()值为( D )。
A、 B、“” C、 D、
20、以下类 的构造方法正确的是( C )。
A、 (“”);
B、 ( (“”));
C、 ( (“”));
D、 ( (“”));
11、下列哪个不是的保留字( D )。
A、 B、 C、 D、
12、下列符号中不能作为标识符的是( D )。
A、 B、$1 C、 D、45
13、方法定义如下:
( y){
()*2;
}
则返回值为( C )。
A、 B、 C、 D、
14、如果 4.2F (4.2F); (4.2);则下列选项正确的是( B )。
C、可以编译成功,但无输出 D、以上均不对
27、声明公用的方法的正确格式是( C )。
A、 () {}
B、 ();
C、 ();
D、 ();
28、下列程序结果正确的是( B )。
{
( []) {
a1 ();
(a1(1));a2 ();(a(2));}}
{
面向对象程序设计复习

一、撑握的知识点:1、单选题:Java的跨平台性、单继承性、垃圾回收机制、关键字、继承(继承的特点及关键字)、Java的修饰符、多态的实现、输入输出流类(字节流、字符流)、this\supuer 的用法、事件的种类、构造方法的特征、变量定义的初始化、容器组件、异常及异常捕获、事件处理机制(处理事件的是事件处理方法)、互斥锁、字段变量的初始化问题、字符串(相关函数及串的连接)等。
2、填空题:Java的基本数据类型、数据类型的强制转换、Java的常用应用程序(%JAVA_HOME%\bin路径下:Javac.exe;java.exe;javadoc.exe;jar.exe等)、Java 顶层类、Java多线程实现的方式、异常处理的方式、互斥锁、final的用法、程序中访问磁盘路径的书写方法、监听者接口等3、判断题:内部类、局部变量(字段变量)、break/continue语句的用法、void返回值的含义、main方法的定义格式及位置、数组的元素类型、缺省构造器、Java的接口、类对象的上下转型、Java程序的开发环境和运行环境4、读程序写结果:继承多态的调用、数组名的含义(其赋值处理)5.、.编程题:键盘输入输出与文件操作、类的定义与.......................继承二、示例:1、单选题1)在java中,存放字符串常量的对象属于( B )类对象。
(A)Character (B)String(C)StringBuffer (D)Vector2)关于Java语言叙述错误的是:( C)(A)Java语言具有跨平台性(B)Java是一种面向对象的语言(D)Java的垃圾收集机制自动回收程序已不再使用的对象3)编译Java Application 源程序文件将产生相应的字节码文件,这些字节码文件的扩展名为( B )。
(A).java (源代码)(B).class (C).html (D).exe4)以下有关类的继承的叙述中,正确的是:( D )(A)子类能直接继承父类所有的非私有属性,也可通过接口继承父类的私有属性(B)子类只能继承父类的方法,不能继承父类的属性(C)子类只能继承父类的非私有属性,不能继承父类的方法(D)子类不能继承父类的私有属性5)java语言的类间用extends实现的是:( B )(A)多重继承(B)单继承(C)接口(D)不能继承6)请看下面的程序,第10行调用的printvalue方法是在( D )声明的。
Java面向对象程序设计复习资料

1.标识符合法判断2.数组定义与引用3.整除、求余操作4.字符串基本操作5.表达式合法性判断、三元表达式用法及简单计算【A ?B :C】6.注释用法,单行注释、多行注释和文档注释各自语法及用途7.构造方法以及作用【带参数和不带参数的构造方法应用以及子类调用父类构造方法】8.类及其属性、方法修饰符【访问范围】9.修饰符混用:abstract不能与final并列修饰同一个类【正确】;abstract类中不可以有private的成员【正确】;abstract方法必须在abstract类中【错误】;static方法中能处理非static的属性【正确】10.抽象方法抽象类11.接口的继承特点,类的继承【子类访问父类变量和方法问题、变量隐藏】特点、多态、子类调用父类相同名字的变量和方法。
12.创建对象数量问题:【1】String s1="bc"; String s2="bc";【2】Strings1="bc"; String s2=new String("bc");13.方法返回类型及方法的定义14.final变量及特点15.静态变量和非静态变量16.abstract和final修饰符17.综合【一般类的编写:成员变量和成员方法,抽象类使用、接口定义及使用、水仙花数、素数、回文数等】18.讨论分析(1)如果p是父类Parent的对象,而c是子类Child的对象,则语句c=p是正确的。
(2)最终类不能派生子类,最终方法不能被覆盖。
(3)Java中的String类的对象既可以是字符串常量,也可以是字符串变量。
(4)Java中数组的元素可以是简单数据类型的量,也可以是某一类的对象。
(5)设String对象s=”Hello ”,运行语句System.out.println(s.concat(“World!”));后String对象s的内容为”Hello world!”,所以语句输出为Hello world!(6)System类不能实例化,即不能创建System类的对象。
java面向对象分析与设计复习(全答案版)

- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
3、下列类DataOutputStream的构造方法正确的是(A)。
A、new dataOutputStream(new (“out.txt”));
B、new dataOutputStream(“out.txt”);
C、new dataOutputStream(new writer(“out.txt”));
ng.RuntimeException
ng.IndexOutOfBoundsException
ng.ArrayIndexOutOfBoundsException
ng.StringIndexOutOfBoundsException
假设有一个方法X,能够抛出两个异常,Array Index和String Index异常,假定方法X中没有try-catch语句,下面哪个答案是正确的。(B)
}
则返回值returnType为(C)。
A、byteB、doubleC、shortD、int
14、如果float f=4.2F;Float g=new Float(4.2F); Double d=new Double(4.2);则下列选项正确的是(B)。
A、f==gB、f==g.floatValue()C、d==fD、d.equals(f)
15、下列二维数组定义中错误的是(A)。
A、int a[][]=new int[][];
B、int []a[]=new int[10][10];
C、int a[][]=new int[10][10];
D、int [][]a=new int[10][10];
16、关于下列语句哪个答案是正确的(D)。
System.out.println(4|7);
class Foo{
public static void main(String args[]){
String s;
System.out.println("s="+s);
}
}
则下列结论正确的是(C)。
A、有输出结果,且为空B、没有输出结果
C、编译错误D、有输出结果,且不为空
11、下列哪个不是Java的保留字(D)。
C、如果方法X声明抛弃IndexOutOfBoundsException,则调用X的方法必须用Try-catch语句
捕获。
D、方法X不能声明抛弃异常。
7、现有一变量声明为boolean aa;下面赋值语句中正确的是( D )。
A、aa=0B、aa=TrueC、aa="true"D、aa=false
8、某类Example的main()方法参数为args,当输入数据Java Example cat时,args[0]的值为(A)。
A、4B、5C、6D、7
17、下面哪一个AWT组件可以有菜单栏MenuBar( A )。
A、Java.awt.Frame
B、Java.awt.Window
C、Java.awt.Applet
D、Java.awt.Panel
18、下列哪个方法用于创建并开始一个新的线程(B)。
A、run();
B、start();
C、execute();
D、run(Runnable r);
19、如果有Boolean a=new Boolean(“yes”),则a.booleanValue()值为(D)。
A、yesB、“yes”C、trueD、false
20、以下类DataOutputStream的构造方法正确的是(C)。
A、new dataInputStream(“in.txt”);
D、new dataOutputStream(new (“out.txt”));
4、在switch(表达式)语句中,表达式的类型不能为(C)。
A、byteB、charC、longD、int
5、在接口MouseMotionListener中方法正确的是(A)。
A、Public void mouseDragged(MouseEvent)
A、catB、JavaC、exampleD、null
9、String s1=new String(“Java”);String s2=new String(s1)则下列哪个说法是正确的(C)。
A、表达式s1==s2为真
B、s1和s2是同一个对象
C、表达式s1.equals(s2)为真
D、以上均不对
10、类定义如下
B、Public boolean mouseDragged(MouseEvent)
C、Pu)
D、Public boolean MouseDragged(MouseMotionEvent)
6、下面是一些异常类的层次关系
ng.Exception
Java面向对象程序设计复习题
一、选择题
1、下列哪个是Java中的关键字(C)。
A、runB、IntegerC、defaultD、implement
2、下面关于Java.applet.Applet和其祖先类的描述语句哪个不对(B)。
A、Applet是Container的一种B、Applet是Window的一种
A、floatB、classC、extendsD、virtual
12、下列符号中不能作为Java标识符的是( D )。
A、abcB、$str1C、_poreD、45six
13、方法methodA定义如下:
returnType methodA(byte x,double y){
return (short)x/y*2;
A、方法X应该声明抛弃ArrayIndexOutOfBoundsException和StringIndexOutOfBounds
Exception。
B、如果调用X的方法捕获IndexOutOfBoundsException,则ArrayIndexOutOfBounds
Exception和StringIndexOutOfBoundsException都可以被捕获。
B、new dataInputStream(new file(“in.txt”));
C、new dataInputStream(new (“in.txt”));