一、选择题:
1.关于对象使用时的描述,下面说法错误的是(D )。
A、通过"."运算符调用成员变量和方法。
B、在方法中使用对象作为参数时,采用引用调用。
C、将一个对象声明为类成员时,必须在使用前为其分配内存。
D、通过成员变量的访问权限设定限制自身对这些变量方法的调用。
2.已知有下面类的说明:
public class Test05_01extends x{
private float f =10.6f;
int i=16;
static int si=10;
public static void main(String[] args) {
Test05_01 x=new Test05_01();
}
}
在main()方法中,下面哪条语句的用法是正确的?( A )。
A、x.f B、this.si C、X5_1_1.i D、X5_1_1.f
3.下面对于面向对象程序设计的基本机制描述不正确的是( B )。
A、继承 B、结构 C、方法 D、消息
4.下列属于Coad方法中面向对象的分析模型的层次有( D )。
A、接口层 B、数据层 C、应用层 D、主题层和对象层
5.一个类属性依其特征划分,其类型没有( C )。
A、描述型 B、定义型 C、应用型 D、派生型 E、参考型
6.在进行面向对象分析时,所采用的模型不包含(C )。
A、对象模型 B、动态模型 C、静态模型 D、功能模型
7.状态是对象属性的值的一种抽象,它的性质有( A )。
A、时间性和持续性 B、有序性 C、有穷性 D、无序性
8.以下哪种语言是面向对象语言( D )。
A、C和C++语言 B、Basic语言C、汇编语言 D、Java语言
9.子类对象能否直接向其父类赋值?父类对象能否向其子类赋值?(B )
A、能,能 B、能,不能 C、不能,能 D、不能,不能
10.Java语言类间的继承关系是( A )。
A、单继承 B、多重继承 C、不能继承 D、不一定
11.Java语言接口间的继承关系是( B )。
A、单继承 B、多重继承 C、不能继承 D、不一定
12.一个类实现接口的情况是( A )。
A、一次可以实现多个接口 B、一次只能实现一个接口
C、不能实现接口 D、不一定
二、填空题:
1.Java是面向对象语言,对象是客观事物的__实体______,对象与之是一一对应的,它是很具体的概念。
2.对象是抽象的类,类的具体化就是____对象____。
3.继承性是父类和子类之间______共享数据结构和方法 ___和消息的机制。
4.面向对象的设计的主要目标是提高生产效率,提高质量和提高_可维护性__。
5.面向对象技术中的“类”,是比较理想的__可重用软构件___。
6.对象模型描述了系统的__静态结构___,它是从客观世界实体的对象关系角度来描述,表现了对象的相互关系。
7.面向对象的基本特征是__封装继承多态 __。
8.Java不支持多继承,但可以通过_接口_______,实现多继承。
三、判断题:
1.多态性增强了软件的灵活性和重用性,允许用更为明确、易懂的方式去建立通用软件,多态性和继承性相结合使软件具有更广泛的重用性和可扩充性。( x )
2.面向对象分析,就是抽取和整理用户需求并建立问题域精确模型的过程。(√)
3.面向对象的设计的主要目标是提高生产效率,提高质量和提高可维护性。(√)
4.对象模型表示了静态的、结构化的系统数据性质,描述了系统的静态结构,它是从客观世界实体的对象关系角度来描述,表现了对象的相互关系。(√)
一、选择题:
1. 下面关于异常的说法正确的一项是(B )。
A、异常就是在程序的运行过程中所发生的不正常的事件,但它不会中断正在运行的程序。
B、Error类和Exception类都是Throwable类的子类。
C、Exception处理的是Java运行环境中的内部错误或者硬件问题,比如,内存资源不足、系统崩溃等。
D、Error处理的是因为程序设计的瑕疵而引起的问题或者外在的输入等引起的一般性问题,例如:在开平方的方法中输入了一个负数,对一个为空的对象进行操作以及网络不稳定引起的读取网络问题等。
2. 引起RuntimeException异常的原因不包括下面哪一项( B )。
A、错误的类型转换B、试图从文件结尾处读取信息
C、试图访问一个空对象D、数组越界访问
3. 引起IOException异常的原因不包括下面哪一项( C )。
A、试图从文件结尾处读取信息
B、试图打开一个不存在或者格式错误的URL。
C、数学计算错误
D、用Class.forName()来初始化一个类的时候,字符串参数对应的类不存在。
4. 下面哪一项不是RuntimeException异常中的一类( A )。
A、ClassNotFoundException:无法找到需要的类文件异常
B、NumberFormatException:数字转化格式异常
C、IllgalArgumentException:非法参数值异常
D、IllegalStateException:对象状态异常,如对未初始化的对象调用方法
5. IOException异常不包括下面哪一项( B )。
A、EOFException:读写文件尾异常
B、InterruptedException:线程中断
C、SocketException:Socket通信异常
D、MalformedURLException:URL格式错误异常
6. 下列关于try-catch-finally处理异常描述有误的一项是( B )。
A、异常处理可以定义在方法体、自由块或构造方法中。
B、catch() 从句中引入一个可能出现的异常,一个try块只可以和一个catch()块配合以处理多个异常。
C、try-catch-finally语句可以嵌套使用。
D、可以将可能出现异常的代码和其它的一些不会引起异常的代码都放在try代码块中。
7. 下面关于catch块对异常采取的措施说法有误的一项是( B )。
A、处理异常,对异常采用合适的处理,然后绕过异常发生的地方或者是继续执行;或者用别的数据进行计算。
B、如果捕获到异常,那catch块也可以不用做一些有用的事情来处理这个异常。
C、重新抛出新异常,把当前运行环境下能做的事情尽量做完,然后把新的异常抛给上层来调用和处理。
D、在合适的层处理异常,如果当前的层不清楚如何处理异常,就不要在当前层使用catch语句来捕获异常,直接使用throws声明抛出异常,由上一层处理该异常。
二、填空题:
1. 异常是在程序编译或运行中所发生的可预料或不可预料的异常事件,出现在编译阶段的异常,称之为___编译时异常_,出现在运行阶段的异常,称之为__、运行时异常______。
1. 根据异常的来源,可以把异常分为两种类型:__运行______和_自定义_______。
2. 所有的Java异常类都是系统类库中的___Exception_____类的子类。
2. 抛出异常分为_由系统自动抛出异常、通过throw抛出异常_以及_、通过throws抛出异常三种情况。
3. Java语言为我们提供了_try -catch_______语句和_try-catch-finally_______语句捕捉并处理异常。
4. 一个try块后面可能会跟着若干个__catch______块,每个__catch______块都有一个异常类名作为参数。
1. 如果try语句块产生的异常对象被第一个catch块所接收,则程序的流程将_转向第一个catch块______,catch语句块执行完毕后就__、退出当前方法______,try块中尚未执行的语句和其他的catch块将被___、忽略_____;如果try语句块产生的异常对象与第一个catch块不匹配,系统将自动转到 _、第二个catch块_______进行匹配。
5. 由于异常对象与catch块的匹配是按照catch块的__先后______顺序进行的,所以在处理多异常时应注意认真设计各catch块的排列顺序。
2. throws语句抛出的异常实际上是由throws语句修饰的方法内部的__throw______语句抛出的,使用throws的主要目的是为了_通知所有预调用此方法的方法_______。
6. Error处理的是Java运行环境中的__内部错误______或者_硬件问题_______。
一、选择题:
1. 下列说法中错误的一项是( A )。
A、线程就是程序
B、线程是一个程序的单个执行流
C、多线程是指一个程序的多个执行流
D、多线程用于实现并发
2. 下列哪个一个操作不能使线程从等待阻塞状态进入对象阻塞状态( D )。
A、等待阴塞状态下的线程被notify()唤醒
B、等待阻塞状态下的纯种被interrput()中断
C、等待时间到
D、等待阻塞状态下的线程调用wait()方法
3. 下列哪个方法可以使线程从运行状态进入其他阻塞状态( A )
A、sleepB、wait
C、yieldD、start
4. 下列说法中错误的一项是( C )
A、一个线程是一个Thread类的实例。
B、线程从传递给纯种的Runnable实例run()方法开始执行。
C、新建的线程调用start()方法就能立即进入运行状态。
D、线程操作的数据来自Runnable实例
5. 下列关于Thread类提供的线程控制方法的说法中,错误的一项是( B )
A、在线程A中执行线程B的join()方法,则线程A等待直到B执行完成。
B、currentThread()方法返回当前线程的引用。
C、线程A通过调用interrupt()方法来中断其阻塞状态。
D、若线程A调用方法isAlive()返回值为true,则说明A正在执行中。
6. 当( A )方法终止的时候,能使线程进入死亡状态。
A、runB、setPrority
C、yieldD、sleep
7. 用(B )方法可以改变线程的优先级。
A、runB、setPrority
C、yieldD、sleep
8. Resume()方法负责重新开始(D)现成的执行。
A、被stop()方法停止。
B、被sleep()方法停止。
C、被wait()方法停止。
D、被suspend()方法停止。
9. 下列说法错误的一项是:(C)
A、Java中的第一个线程都属于某个线程组。
B、线程只能在其创建时设置所属的线程组。
C、线程创建之后可以从一个线程组转移到另一个线程组。
D、新建的线程默认情况下属于其父线程所属的线程组。
10. 下列关于线程说法不正确的是(C)
A、一个线程是一个Thread类的实例。
B、线程从传递给纯种的Runnable实例run()方法开始执行。
C、新建的线程调用start()方法就能立即进入运行状态。
D、线程操作的数据来自Runnable实例。
二、填空题:
1. 在操作系统中,被称做轻型的进程是____线程_______________。
2.在Java程序中,run()方法的实现有两种方式_____实现Runnable接口_和______继承Thread类__。
2. 多个线程并发执行时,各个线程中语句的执行顺序是___确定__的,但是线程之间的相对执行顺序是___不确定____的。
3. Java中的对象锁是一种独占的___排他__锁
4. 程序中可能出现一种情况:多个线种互相等待对方持有的锁,而在得到对方的锁之前都不会释放自己的锁,这就是__死锁__。
3. 线程的优先级是在Thread类的常数__MIN_PRIORITY_和 _MAX_PRIORITY__之间的一个值。
5. 处于新建状态的线程可以使用的控制方法是start()____和stop()_______________的基础协议。
6. 一个进程可以包含多个线程_。
三、判断题:
1. 如果线程死亡,它便不能运行。( √ )
2. 在Java中,高优先级的可运行线程会抢占低优先级线程。( √ )
3. 线程可以用yield方法使低优先级的线程运行。(x )
4. 程序开发者必须创建一个线程去管理内存的分配。( x )
5. 一个线程在调用start方法之前,该线程将一直处于出生期。( √ )
6. 当调用一个正在进行线程的stop()方法时,该线程便会进入休眠状态。(x)
一、选择题:
1. 下列哪一个方法可以产生随机数( B )。
A、round( )B、random()
C、exp( )D、abs()
2. 下列关于Math类的说法不正确的是( C )。
A、Math类中定义了多个实现标准数学函数功能的基本方法。
B、Math类的构造方法被定义为private的。
C、Math类中的所有成员方法可以是静态的(static)也可以是非静态的。
D、Math类是final的,不能被继承。
3. 下列关于日期类说法正确的是(A )
A、Calendar是一个抽象类,用来表示日历的概念。
B、Date类after()方法测试该日期是否比参数中指定的的日期迟。
C、Calendar类roll()方法加上值超出了它所能表示的最大范围,就会改变原值。
D、TimeZone类可以通过new创建时区实例。
4. 下列关于日期类中的方法使用不正确的一项是( D )
A、TimeZone类getDisplayName()方法获得对应时区的显示名称。
B、DateFormat类getTimeInstance返回一个时间格式器,它格式后的字符串只有时间,没有日期。
C、Calendar类getTime()获得一个这个Calendar所表示的日期的对应的Date类型的值。
D、DateFormat类getDateTimeInstance返回一个时间格式器,它格式后的字符串只有日期没有时间。
5. 下面说法不正确的是( D )
A、列表(List)、集合(Set)和映射(Map)都是java.util包中的接口。
B、List接口是可以包含重复元素的有序集合。
C、Set接口是不包含重复元素的集合。
D、Map接口将键映射到值?键可以重复?但每个键最多只能映射一个值。
6. 欲构造ArrayList类的一个实例,此类继承了List接口,下列哪个方法是正确的( B )。
A、ArrayList myList=new Object()
B、List myList=new ArrayList()
C、ArrayList myList=new List()
D、List myList=new List()
7. 下列说法不正确的一项是(C )。
A、 List是Collection的子接口,它用于保存有序的可重复的对象。B、ArrayList可以当做一种可以自动增加容量存放不同类型对象的数组。
C、Vector和ArrayList均集成List集合接口并且是线程安全的。
D、Vector可以当做一种可以自动增加容量存放不同类型对象的数组。
8. 下列关于Set集合说法正确的是(C )。
A、Set接口它表示的是可以重复的对象集合。
B、Set有AbstractSet、 HashSet、 LinkedSet、 TreeSet这些子类。
C、HashSet是一个无序的集,但是它能够快速的查找指定的对象。
D、某类的实例x和y,如果x.equals(y),那么x.hashCode()和y.hashCode()不相等。
9. 下列关于泛型的说法不正确的一项是:(A)
A、泛型的唯一作用是提高 Java 程序的类型安全。
B、泛型的可以消除源代码中的许多强制类型转换。
C、当声明或者实例化一个泛型的对象时,必须指定类型参数的值。
D、实际应用中可以根据自己的需求自定义泛型。
10. 下列那个正则表达式可以用于验证Email地址是否符合规则的是(D)
B、(\.\p{Alpha}{2})?
C、\w+@\w+\.\p{Alpha}{2,4}(\.\p{Alpha}{2})?
D、\w+@\w+\.\p{Alpha}{2,4}
二、填空题:
Math类中的所有成员方法都是_____静态方法_,可以直接使用________ 类名.方法
Date类的before()方法主要作用是___测试该日期是否比参数中指定的日期迟_____。
1. Calendar是一个____抽象_________类,用来表示日历的概念。
2. Calendar类获得以毫秒表示的时间值的方法是_getTimeInMillis()________________。
3. List是____Collection_______的子接口,它用于保存有序的可重复的对象。
4. HashSet是一个___无序___________的集合,但是它能够快速的查找指定的对象,这是因为它采用了能够适应这个需求的散列码______________。
5. Map用能够适应这个需求的散列码____方法来添加一个值,用get(key)____方法获取与key键相关联的值。
6. 泛型的主要作用是类型安全_和消除强制类型转换_。
三、判断题:
1. 使用enum来构造一个新的枚举类型。( √ )
2. 则表达式通常由普通的字符和一些特殊的字符组成。( √ )
3. Collection包含了许多对集合进行运算的专用静态方法,这些运算包括对集合进行排序、混排、查找和比较等。( × )
4. Map集合中的containsKey(Object key) 用来判断某个Key是否存在。( √ )
5. Calendar类是一个抽象类,它表示的是一个时区的概念。( × )
6. 定义的所有的枚举值,它都是final static的,是静态的常量。(√ )