多线程
黑马程序员基础评测:多线程
以下题目为 单选题 或 多选题,请认真作答。请在您认为正确的答案前勾选 “√”
1
以下类中,哪些不是线程安全的( ) ----- 单选
A、StringBuffer
B、Vector
C、HashMap
D、Hashtable
2
编写线程类,要继承的父类是( ) ----- 单选
A、Runnable
B、 Object
C、Thread
D、Serializable
3
当下列哪个方法终止时,能使线程进入死亡状态( ) ----- 单选
A、run
B、 setPrority
C、 yield
D、sleep
4
下列说法中错误的一项是( ) ----- 单选
A、一个线程是一个Thread类的实例
B、线程由Runnable实例的run()方法开始执行
C、如果已经继承了一个父类那么可以通过实现Runnable接口来创建线程
D、新建的线程调用start()方法就能立即进入运行状态
5
以下关于yield()方法,说法正确的是( ) ----- 单选
A、该方法会暂停其他的线程,直到当前线程执行终止。
B、该方法会暂停当前正在执行的线程,并执行其他线程。
C、该方法会让出CPU的执行权,并且会完全按我们的预期效果运行。
D、该方法会造成线程死亡,不再继续执行。
6
下列关于多线程并行和并发的说法不正确的是( ) ----- 单选
A、并行和并发没有区别,都是指同时执行多个任务。
B、并行是多个任务同时运行,例如甲任务进行的同时,乙任务也在进行。
C、并发是指多个任务都请求运行,而处理器只能按受一个任务,就把多个任务安排轮流进行,由于时间间隔较短,使人感觉多个任务都在运行。
D、并行需要多核CPU,而并发不需要。
7
以下代码是声明实现 Runnable 接口的类,以创建新的线程并启动,在横线处填入哪些代码可以实现上述目标( ) ----- 单选
public class MyRunnable implements Runnable {
public void run() {
// do something…
}
}
public class MyRunnableTest {
public static void main(String[] args) {
____________________________________
}
}
A、 new MyRunnable().run();
B、new MyRunnable().start();
C、 new Thread(new MyRunnable()).run();
D、 new Thread(new MyRunnable()).start();
8
下列说法中,错误的一项是( ) ----- 单选
A、对象锁在synchronized()语句执行完之后由持有它的线程返还
B、对象锁在synchronized()语句中出现异常时由持有它的线程返还
C、当持有锁的线程对象调用了wait()方法时,线程将释放其持有的锁
D、当持有锁的线程对象调用了构造方法时,线程将释放其持有的锁
9
下列关于死锁的阐述,错误的是( ) ----- 单选
A、死锁是指两个或两个以上的进程在执行过程中,因争夺资源而造成的一种互相等待的现象。
B、死锁不会影响程序的执行,还可以完成执行任务。
C、死锁产生的原因是一个资源每次只能被一个进程使用,而进程因请求资源而阻塞时,对已获得的资源保持不放。
D、可以使用阻止循环等待条件,将系统中所有的资源设置标志位、排序,规定所有的进程申请资源必须以一定的顺序(升序或降序)做操作来避免死锁。
10
下列关于多线程的描述正确的是( ) ----- 多选
A、 多线程是指在一个进程中同时运行多条线程
B、多线程是为了使得多个线程并发的工作以完成多项任务,提高系统的效率
C、多线程的形成原因是CPU在多个线程间做着高效的切换
D、多线程的形成原因是CPU可以同时执行多条线程,处理多个任务
黑马程序员基础评测:网络编程
以下题目为 单选题 或 多选题,请认真作答。请在您认为正确的答案前勾选 “√”
1
Java中,用哪一个类来表示TCP协议的服务器Socket对象( ) ----- 单选
A、Socket
B、InputStream
C、ServerSocket
D、OutputStream
2
使用Socket套接字编程时,为了向对方发送数据,需要使用哪个方法获取流对象( ) ----- 单选
A、getInetAddress()
B、getLocalPort()
C、getOutputStream()
D、getInputStream()
3
下面对端口的概述哪个是错误的( ) ----- 单选
A、端口是应用程序的逻辑标识
B、端口是有范围限制的
C、端口的值可以任意
D、0-1024之间的端口不建议使用
4
当使用客户端套接字Socket创建对象时,需要指定( ) ----- 单选
A、服务器端口和文件
B、服务器主机和端口
C、服务器名称和文件
D、服务器地址和文件
5
下列选项中哪一个是TCP协议编程中会使用到的Socket对象( ) ----- 单选
A、DatagramSocket
B、ClientScoket
C、ServerScoket
D、PacketSocket
6
以下关于UDP协议正确的是----- 多选
A、UDP协议会3次握手
B、传输有数据大小限制
C、传输时数据最大限制为64K
D、是可靠协议
7
使用流式套接字编程时,为了向对方发送数据,需要使用哪个方法( ) ----- 单选
A、getInetAddress()
B、getLocalPort()
C、getOutputStream()
D、getInputStream()
8
关于Socket中说法正确的是----- 多选
A、由IP协议和端口组成
B、由IP和端口组成
C、底层通过IO流实现
D、网络通信其实就是Socket之间的通信
9
Java中如何创建TCP客户端对象( ) ----- 单选
A、Socket socket = new Socket(IP, 8888);
B、DatagramSocket ds = new DatagramSocket();
C、DatagramSocket ds = new DatagramSocket(port);
D、DatagramPacket packet = new DatagramPacket(bys, bys.length);
10
使用UDP套接字通信时,哪个方法用于接收数据( ) ----- 单选
A、read()
B、receive()
C、accept()
D、listen()
黑马程序员基础评测:反射
以下题目为 单选题 或 多选题,请认真作答。请在您认为正确的答案前勾选 “√”
1
关于反射机制下列说法错误的是( ) ----- 单选
A、反射机制指的是在程序运行过程中,通过.class文件加载并使用一个类的过程
B、反射机制指的是在程序编译期间,通过.class文件加载并使用一个类的过程
C、反射可以获取类中所有的属性和方法
D、暴力反射可以获取类中私有的属性和方法
2
下列关于反射和泛型的联系说法正确的是( ) ----- 单选
A、泛型无论是在编译时还是运行时都会检测
B、反射机制不能绕过泛型检查
C、可以通过反射绕过泛型检查
D、以上说法都不对
3
关于类的加载时机说法错误的是( ) ----- 单选
A、Java程序启动时加载所有的类到内存中
B、某个类的对象被创建时加载一个类
C、用类名调用该类的静态方法时加载一个类
D、初始化一个类的子类时加载一个类
4
下列关于代理模式说法正确的是( ) ----- 单选
A、代理模式就是让别人帮我们做事情,别人就是代理
B、代理模式就是创建一个工厂,让工厂代替我们做事情
C、代理模式是一种设计模式,所以实现代理模式需要我们自己写代码,JDK没有提供代理模式的案例
D、代理模式不需要抽取接口,只要有代理类就可以了
5
下列关于通过反射方式获取方法并执行的过程说法正确的是( ) ----- 多选
A、通过对象名.方法名(参数列表)的方式调用该方法
B、通过Class.getMethod(方法名,参数类型列表)的方式获取该方法
C、通过Class.getDeclaredMethod(方法名,参数类型列表)获取私有方法
D、通过invoke(对象名,参数列表)方法来执行一个方法
6
下列选项中关于JDK5的新特性错误的是( ) ----- 单选
A、新增增强for循环
B、新增枚举类型
C、新增泛型和可变参数
D、自动装箱和自动拆箱是在JDK5之前就出现了的
7
使用反射机制获取一个类的属性,下列关于getField()方法说法正确的是( ) ----- 多选
A、该方法需要一个String类型的参数来指定要获取的属性名
B、该方法只能获取私有属性
C、该方法只能获取公有属性
D、该方法可以获取私有属性,但使用前必须先调用setAccessible(true)
8
关于枚举定义的说法正确的是( ) ----- 单选
A、定义枚举的关键字是:class
B、枚举中只能有常量
C、枚举是一种特殊的类,因为的它的对象个数是有限的
D、枚举中不能定义抽象方法
9
如果一个类没有无参构造方法,如何创建该类的对象( ) ----- 多选
A、通过Class类的getConstructor()方法获取有参数的构造器,然后创建对象
B、通过Class类的newInstance()方法创建对象
C、通过new关键字调用有参构造创建对象
D、不能创建对象
10
关于JDK7新特性说法正确的是( ) ----- 多选
A、switch后可以是String类型表达式
B、多个异常可以合并处理
C、JDK7提供了新的垃圾回收器,针对目前的CMS垃圾回收器,这将会让垃圾回收器有更少的停顿时间和更高的语言效果。
D、接口中可以定义静态方法
|
|