Java基础之二十 并发】的更多相关文章

20.1 并发得多面性 并发编程令人困惑的一个主要原因:使用并发时需要解决的问题有多个,而实现并发的方法也有多种,并且在这两者之间没有明显的映射关系. 20.1.1 更快的执行 速度问题初听起来很简单:如果你需要一个程序运行得更快,那么可以将起断开为多个片段,在单个处理器上运行每个片段. 并发通常是提高运行在单个处理器上的程序的性能,但在单个处理器上运行的并发程序开销确实应该比该程序所有部分都顺序执行开销大,因为其中增加了所谓的上下文切换的代价. 如果没有任务会阻塞,那么在单处理器上使用并发就没…
一.RandomAccessFile类 使用RandomAccessFile类可以读取任意位置数据的文件. 1.构造方法 RandomAccessFile(String name, String mode) RandomAccessFile(File file, String mode) 其中“mode”表示:r(只读).rw(可读写).rws(同步写入).rwd(更新同步写入) 2.常用方法 3.示例代码 package jun.iplab.RandomAccessFile; import j…
字节流是以字节为单位来处理数据的,由于字节流不会对数据进行任何转换,因此用来处理二进制的数据. 一.InputStream类与OutputStream类 1.InputStream类是所有字节输入流的父类,它定义了操作输入流的各种方法. 2.OutputStream类是所有字节输出流的父类,它定义了输出流的各种操作方法. write(byte[] bytes) // 将byte[]数组中的数据写入到当前输出流 write(bytep[ bytes, int off, int len) // 将b…
在Java API中,可以从其中读入一个字节序列的对象称作输入流,而可以向其中写入一个字节序列的对象称为输出流. 输入流的指向称为源,程序从指向源的输入流中读取数据. 输出流的指向是字节要去的目的地,程序通过向输出流中写入数据把信息传递到目的地. 输入输出流一般分为字节输入流.字节输出流.字符输入流和字符输出流. 这些字节序列的来源地和目的地可以是文件.网络连接甚至是内存块. 抽象类InputStream和OutputStream构成了输入/输出类层次结构的基础. 1.字节输入流InputStr…
Set集合为集类型.集是最简单的一种集合,存放于集中的对象不按特定方式排序,只是简单地把对象加入集合中.对集中存放的对象的访问和操作时通过对象的引用进行的,所以,在集中不能存放重复对象. Set接口实现了Collection接口,从而拥有Collection接口提供的所有常用方法. 实现了Set接口的类有三种,分别是HashSet类(子类为LinkedHashSet类).EnumSet类和TreeSet类. 1.HashSet类 由HashSet类实现的Set集合的优点是能够快速定位集合中的元素…
1.概述 对于Java程序员来说,到目前为止出现次数最多的应该是NullpointException,它是导致Java应用程序失败的最常见原因.之前处理空指针我们必须先通过条件先去判断,然后再确认是否有null值.但是在Java8中,我们可以使用Optional类来解决null值判断问题,其借鉴Google Guava项目的Optional类而引入的一个同名Optional类,Guava通过使用检查空值的方式来防止代码污染,它鼓励程序员写更干净的代码.使用Optional类可以避免显式的null…
1.为什么要用正则表达式 首先我们先来做一道题目:判断一个字符串是否由数字组成.代码示例如下: public class Test { public static void main(String[] args) { String str="5201314"; char[] chars = str.toCharArray(); boolean flag=true; for (int i=0;i<chars.length;i++){ if (chars[i]<'0'||cha…
这里有我之前上课总结的一些知识点以及代码大部分是老师讲的笔记 个人认为是非常好的,,也是比较经典的内容,真诚的希望这些对于那些想学习的人有所帮助! 由于代码是分模块的上传非常的不便.也比较多,讲的也是比较清晰的!如果你有需要可以在评论中留下您的邮箱我看到一定会免费发给你的!感谢这个平台让我们大家共同进步吧!! 记住 程序员是无私的!!! 也非常欢迎到我的博客内观看 博客地址:http://www.cnblogs.com/duscl/ /* 1:多线程(理解) (1)多线程:一个应用程序有多条执行…
参考之前整理过的Java序列化与反序列化:https://www.cnblogs.com/BigJunOba/p/9127414.html 使用对象输入输出流可以实现对象序列化与反序列化,可以直接存取对象. 将对象存入一个流被称为序列化,而从一个流将对象读出被称为反序列化. 对象序列化与反序列化的过程: 1.被序列化的对象必须实现java.io.Serializable接口,否则不能实现序列化. public class Employee implements Serializable{ ...…
File类是一个与流无关的类.File类的对象可以获取文件及其文件所在的目录.文件的长度等信息. 1.File对象的常用构造方法. (1)File(String pathname) File file2 = new File("D:\\FileTest\\FileTest.txt"); (2)File(String path, String filename) File file2 = new File("D:\\FileTest\\FileTest.txt");…