java单选框的讲课ppt6_Joho Lewis《Java Software Solutions》第六版课件第十....ppt

《Joho Lewis《Java Software Solutions》第六版课件第十....ppt》由会员分享,可在线阅读,更多相关《Joho Lewis《Java Software Solutions》第六版课件第十....ppt(15页珍藏版)》请在人人文库网上搜索。

1、第10章线程、档案和序列化,牙齿章节介绍了有关线程和输入/输出的几个茄子高级主题。首先介绍了线程和并发编程的基本概念、模型和应用。然后说明如何从文件读取数据并将数据写入文件,包括Java中最常用的输入/输出流。最后,介绍了对象序列化和使用对象流序列化的方法。10.1多线程计算机编程,多线程程序可以同时运行程序的多个部分。现代操作系统及许多科学应用都是多线程程序。多线程编程可以解决后台任务、并发任务、管理用户界面等编程问题,因此多线程计算机编程也变得越来越重要。10.1.1多任务、进程和线程、多任务操作系统中,通常将运行的节目实例称为进程。进程是发送到内存以准备运行的程序。每个进程在分配的空间中。

2、独立运行,并且进程和进程之间没有干涉。线程是程序中可执行的语句序列,是单独的执行进程。通常,每个进程都有一个或多个线程(主线程),在自己的地址空间中运行代码。线程是进程中运行的路径,是操作系统分配CPU时间的基本实体。每个进程可以包含多个线程,这些线程可以同时独立运行进程地址空间中的代码。进程中的所有线程共享进程的地址空间。线程是基于线程的多任务环境中最小的执行单元。10.1.1多任务、进程和线程、应用程序可以为多任务并行处理创建多个进程,并在单个进程中使用多线程生成两种茄子方法,但是线程是轻量任务,线程代码映射到进程的地址空间,新进程是需要更多管理开销和系统资源的重量级任务。进程中的所有线程。

3、可以共享进程的地址空间并访问进程的全局变量,从而使线程间通信更加方便,线程间切换更便宜。10 . 1 . 2 Java线程模型,主线程在程序启动时自动生成,但可以通过Thread.currentThread方法作为线程对象调用。要创建线程,可以实例化线程对象。Java提供两种茄子方法。继承Thread类以实现Runnable介面,使用执行方法(而不是、)启动子线程。对于新生成的线程。调用线程的start方法时,将自动调用线程对象的run方法。线程是异步的。也就是说,执行顺序和一系列线程计时至少从程序员的角度来看是零碎的,不可预测的。异步线程原则:线程完全异步运行,除非明确优先级或严格同步。负责。

4、完成整个流程的最后清理和结算任务。运行多线程节目MultiThreadDemo1牙齿演示。10 . 1 . 2 Java线程模型、每个线程都有由多个茄子不同状态组成的生命周期。这些状态包括:就绪线程执行就绪和CPU执行线程等待CPU上的执行等待线程等待事件等待挂起线程等待一段时间休眠等待等待I/O结束前,等待关闭线程。10.1.2 Java线程模型、Thread.sleep方法以毫秒为单位休眠线程,允许其他等待线程执行。理论上,优先级高的线程比优先级低的线程占用更多的CPU时间。但实际上,线程获取的CPU时间通常由多个因素(包括优先级)决定。要设置线程优先级,可以使用Thread.setPri。

5、ority方法。将线程的优先级设置为1到10之间的整数值。调整两个线程之间的行为的一种茄子方法是赋予其中一个线程更高的优先级。但是,如果不放弃占用CPU的高优先级线程,低优先级线程可能会过度等待。具有优先级控制的多线程节目执行演示(MultiThreadDemo3)、10.1.3设计多线程应用节目和Java程序中的并发编程通过多线程实现。使用多线程编程的优点是可以在一个程序中同时执行多个任务。这在动画设计中尤为重要。这是因为通常需要在动画中同时绘制多个动画对象,而不是在绘制一个对象后绘制另一个对象。多线程演示节目BubbleThreadDemo的设计。10.2流和档案,流表示数据流。如果数据流。

6、写入程序,则该数据流称为数据流。相反,程序输出的数据流称为输出流。如果输入数据流来自键盘,程序将从键盘中读取数据。如果输入数据流来自文件,程序将从文件中读取数据。同样,输出数据流输出到文件或屏幕。输入是指正在运行的程序从外部数据源读取信息或数据。如果程序包含失败者数据,则从键盘或GUI界面的组件(如JTextField)中获取。输出是指正在运行的程序向外部目标写入信息或数据。程序生成输出时,会将其发送到屏幕(控制台节目)、GUI组件或文件。文件是存储在磁盘或其他永久存储介质上的数据集合。文件的存在不依赖于运行的程序。文件通过流导入和导出。10.2.1基本概念、Java中的所有输入输出都通过使用。

7、流来完成,无论是档案I/O还是与键盘和屏幕相关的I/O。一个流是将信息传输到另一个对象的源或目标的对象。流动就像连接信息来源和目的地的管道。Java包含两种茄子类型的文件:二进制文件和文本文件。两个档案都将数据存储为位流序列,即0或1序列。因此,两种牙齿档案类型的区别在于读取或写入数据的程序对数据的解释不同。二进制文件被视为字节序列,文本文件被视为字符序列。文本文件可以文本编辑器直接读写,二进制文件可以使用文本编辑器直接读写,但反而可以有效地被节目读写。10.2.2基于文本文件的应用程序节目和文本文件格式文本文件字符序列。这些字符被拆分为行,并以特殊的档案终止符结束。在文本编辑器中打开新文件时。

8、,包含零行零个字符。如果输入单个字符,则包含一个字符和一行。读取和写入文本文件、和文件中的数据。1、将输入链接到文件。2、使用循环读取文本数据。3、关闭流。将数据写入文件:1,将输出连接到文件。2、将文本数据写入流,可以使用循环实现。3、关闭流。10.2.3 I/O流和档案,Java提供java.io包中定义的各种I/O流。I/o流可以分为两个茄子主要类别:字节流和字符流。字节流(byte stream)可以轻松处理字节的输入输出。文字流常用于读取和写入文本数据。但是,字节流最有效地读写文件,字节流经常用于数据的基本处理。通常,二进制文件处理由InputStream和OutputStream的。

9、派生类处理。文本文件处理由Reader和Writer的派生类处理。若要确保文件名必须创建给定的输出或输出流,并且可以将字符串写入档案,请选择可用于读取和写入文本文件的FileReader/FileWriter类。10.3对象序列化和对象序列化有时也称为对象序列化。物件序列化可让程式将整个物件写入位元组串流。反向过程是从单字节流中读取预先存储的整个对象(称为对象并行度)。Java串行处理功能的真正优点是Java程序可以轻松地徐璐转换Java对象和二进制流。对象序列化机制可以自动弥补徐璐其他操作系统之间的差异。您可以永久保存对象的状态。实现分布式对象。用于对象的“深度复制”。Java对象序列化不仅。

10、可以存储有关对象的所有信息,还可以跟踪和存储对象中包含的所有引用。这样递归地形成对象网络。递归序列化引用对象时,Java对象序列化算法还会自动维护序列化对象引用表,以确保不会传输同一引用对象的多个副本。序列化通常是自动执行的,在序列化期间,对象的所有数据成员都可以序列化,声明为static的成员除外。对于不需要序列化的数据成员,还可以通过transient关键字强制进行掩码。序列化10.3对象,在Java中实现java.io.Serializable接口的类对象可以序列化,而无需向类中添加代码。但是,不是所有的类都可以序列化。Java.io包包含两个序列化对象的流类。ObjectOutputStream将对象写入字节流,ObjectInputStream从字节流读取对象。object output stream、fileonputstream、objectiutputstream、file inputstream。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值