Java期末考试试题及参考答案(12)

这篇具有很好参考价值的文章主要介绍了Java期末考试试题及参考答案(12)。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。


版权声明

  • 本文原创作者:谷哥的小弟
  • 作者博客地址:http://blog.csdn.net/lfdfhl

一、填空题

1.实现多线程的两种方式是继承________类和实现________接口。
2.线程的整个生命周期分为5个阶段,分别是________、________ 、________、阻塞状态和死亡状态。
3.在Thread类中,提供了一个________方法用于启动新线程。
4.执行________方法,可以让线程在规定的时间内休眠。
5.同步代码块使用________关键字来修饰。

二、判断题

1.对Java程序来说,只要还有一个前台线程在运行,这个进程就不会结束。
2.使用synchronized关键字修饰的代码块,被称作同步代码块。
3.操作系统中的每一个进程中都至少存在一个线程。
4.线程结束等待或者阻塞状态后,会进入运行状态。
5.当调用一个正在运行线程的stop()方法时,该线程便会进入休眠状态。

三、选择题

1.下列有关线程的创建方式说法错误的是( )
A、通过继承Thread类与实现Runnable接口都可以创建多线程程序
B、实现Runnable接口相对于继承Thread类来说,可以避免由于Java的单继承带来的局限性
C、通过继承Thread类与实现Runnable接口创建多线程这两种方式没有区别
D、大部分的多线程应用都会采用实现Runnable接口方式创建
2.以下哪种原因不会导致线程暂停运行()
A、等待
B、阻塞
C、休眠
D、挂起及由于I/O操作而阻塞
3.以下关于计算机中,线程调度模型的说法错误的是( )
A、在计算机中,线程调度有两种模型,分别是分时调度模型和抢占式调度模型
B、Java虚拟机默认采用分时调度模型
C、分时调度模型是指让所有的线程轮流获得CPU的使用权
D、抢占式调度模型是指让可运行池中优先级高的线程优先占用CPU
4.Java多线程中,关于解决死锁的方法说法错误的是( )
A、避免存在一个进程等待序列{P1,P2,…,Pn},其中P1等待P2所占有的某一资源,P2等待P3所占有的某一源,……,而Pn等待P1所占有的的某一资源,可以避免死锁
B、打破互斥条件,即允许进程同时访问某些资源,可以预防死锁,但是,有的资源是不允许被同时访问的,所以这种办法并无实用价值
C、打破不可抢占条件。即允许进程强行从占有者那里夺取某些资源。就是说,当一个进程已占有了某些资源,它又申请新的资源,但不能立即被满足时,它必须释放所占有的全部资源,以后再重新申请。它所释放的资源可以分配给其它进程。这样可以避免死锁
D、使用打破循环等待条件(避免第一个线程等待其它线程,后者又在等待第一个线程)的方法不能避免线程死锁
5.对于线程的生命周期,下面四种说法正确的有哪些? (多选)( )
A.调用了线程的start()方法,该线程就进入运行状态
B.线程的run()方法运行结束或被未catch的InterruptedException 等异常终结,那么该线程进入死亡状态
C.线程进入死亡状态,但是该线程对象仍然是一个Thread对象,在没有被垃圾回收器回收之前仍可以像引用其他对象一样引用它
D.线程进入死亡状态后,调用它的start()方法仍然可以重新启动

四、简答题

1.简述创建多线程的两种方式。
2.简述同步代码块的作用。
同步代码块的作用是控制线程,保证同步代码块中只能有一个线程在运行,保证了多线程操作数据的安全性。

五、编程题

  1. 编写一个多线程程序,模拟火车售票窗口售票的功能。创建线程1和线程2,通过这两个线程共同售出300张票。

参考答案

一、
1.Thread Runnable
2.新建状态(New)、就绪状态(Runnable)、运行状态(Running)
3.start()
4.sleep()
5.synchronized
二、
1.对
2.对
3.对
4.错
5.错
三、
1.C
2.B
3.B
4.D
5.BC
四、
1.
一种是继承java.lang包下的Thread类,覆写Thread类的run()方法,在run()方法中实现运行在线程上的代码。
new Thread() {
public void run(){}
}.start();
另一种就是实现java.lang.Runnable接口,同样是在run()方法中实现运行在线程上的代码。
class MyThread implements Runnable{
public void run(){}
}
2.
同步代码块的作用是控制线程,保证同步代码块中只能有一个线程在运行,保证了多线程操作数据的安全性。
五、文章来源地址https://www.toymoban.com/news/detail-485287.html

public class Example {
    public static void main(String[] args) {
        TicketWindow tw = new TicketWindow();
        new Thread(tw, "线程1").start();
        new Thread(tw, "线程2").start();
    }
}
class TicketWindow implements Runnable {
    private int num = 300;
    public void run() {
        while (num > 0) {
            Thread th = Thread.currentThread();
            String th_name = th.getName();
            System.out.println(th_name + " 正在发售第 " + num-- + " 张票 ");
        }
    }
}

到了这里,关于Java期末考试试题及参考答案(12)的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Java期末考试试题及参考答案(11)

    本文原创作者:谷哥的小弟 作者博客地址:http://blog.csdn.net/lfdfhl 1.JDBC驱动管理器专门负责注册特定的JDBC驱动器,主要通过________类实现。 2.在编写JDBC应用程序时,必须要把指定数据库驱动程序或类库加载到________中。 3.Statement接口的executeUpdate(String sql)方法用于执行SQL中

    2024年02月10日
    浏览(38)
  • 前端期末考试试题及参考答案(06)

    本文原创作者:谷哥的小弟 作者博客地址:http://blog.csdn.net/lfdfhl video标签支持三种格式的视频文件,分别为______、 、 。 ______用于获取视频的原始高度。 表达式\\\"27\\\" !=27的值为______。 标签支持三种格式的音频文件,分别为______、 、 。 Audio对象中用于设置是否静音的属性是_

    2024年02月10日
    浏览(51)
  • 前端期末考试试题及参考答案(08)

    本文原创作者:谷哥的小弟 作者博客地址:http://blog.csdn.net/lfdfhl 在BootStrap中,表单、分页等都属于Bootstrap的______。 Bootstrap是由______公司的设计师开发的一个前端开源框架。 在页面引入html5shiv.min.js,用于让低版本的浏览器支持______元素。 Bootstrap包中为我们提供了两个容器类

    2024年02月09日
    浏览(50)
  • 前端期末考试试题及参考答案(01)

    本文原创作者:谷哥的小弟 作者博客地址:http://blog.csdn.net/lfdfhl ______表示页面中一个内容区块或整个页面的标题。 ______表示页面中一块与上下文不相关的独立内容,比如一篇文章。 CSS的引入方式有3种,分别是行内式、内嵌式和______。 CSS的浮动可以通过______属性进行设置。

    2024年02月08日
    浏览(52)
  • MySQL数据库期末考试试题及参考答案(01)

    本文原创作者:谷哥的小弟 作者博客地址:http://blog.csdn.net/lfdfhl ___在20世纪80年代被美国国家标准学会和国际标准化组织定义为关系型数据库语言的标准。 数据模型所描述的内容包括3个部分,分别是数据结构、数据操作、___。 概念数据模型中实体与实体之间的联系,有___、

    2024年02月05日
    浏览(42)
  • MySQL数据库期末考试试题及参考答案(04)

    本文原创作者:谷哥的小弟 作者博客地址:http://blog.csdn.net/lfdfhl MySQL中提供了____,可以在查询时去除重复的值。 使用ORDER BY对查询结果进行排序时,默认是按____排列。 SELECT语句中,用于对分组查询结果再进行过滤的是____。 为了使查询结果满足用户的要求,可

    2024年02月11日
    浏览(47)
  • MySQL数据库期末考试试题及参考答案(06)

    本文原创作者:谷哥的小弟 作者博客地址:http://blog.csdn.net/lfdfhl 普通索引使用KEY或____定义。 在MySQL中,DROP VIEW语句用于____。 MySQL中常见的索引大致分为普通索引、 ____ 、 ____ 、全文索引、空间索引。 只有在查询条件中使用了复合索引中的____字段时,该复合索引才会被使用

    2024年02月08日
    浏览(51)
  • MySQL数据库期末考试试题及参考答案(08)

    本文原创作者:谷哥的小弟 作者博客地址:http://blog.csdn.net/lfdfhl MySQL用户变量由符号____和变量名组成。 MySQL中____循环语句会无条件执行一次语句列表。 DELIMITER语句可以设置MySQL的____。 MySQL中打开游标使用____。 存储过程的过程体以____表示过程体的开始,以____表示过

    2024年02月11日
    浏览(50)
  • MySQL数据库期末考试试题及参考答案(02)

    本文原创作者:谷哥的小弟 作者博客地址:http://blog.csdn.net/lfdfhl 创建数据库时,语句中添加____可以防止数据库已存在而引发的程序报错。 如果使用非图形化工具操作数据表,操作之前应该先使用____命令指定操作是在哪个数据库中进行。 在MySQL中,小数的表示分为____和定点

    2024年02月11日
    浏览(47)
  • MySQL数据库期末考试试题及参考答案(05)

    本文原创作者:谷哥的小弟 作者博客地址:http://blog.csdn.net/lfdfhl 交叉连接查询返回的结果是被连接的两张数据表中所有数据行的____ 。 左连接查询的结果包括LEFT JOIN子句中左表的____,以及右表中满足连接条件的记录。 内连接查询的语法中,ON用于指定查询的____。 被外键引

    2024年02月05日
    浏览(96)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包