
Java SE笔记
本专栏将陆续更新关于Java I/O、Java网络编程、Java集合框架、Java多线程相关的知识。
肖鹏丶
Change the World with Code !
展开
-
(一)、Java I/O系统——File类的使用
在真正学习Java I/O之前,我们先了解一个实用的操作目录及文件的类-File类1、File类File类不仅仅只代表存在的目录或者文件。也可以用 File 对象来创建新的文件或者尚不存在的目录路径;查看文件的特性(大小、最后修改日期、读/写);判断某一个file对象是目录还是文件;删除文件等操作。1.1、构造方法new File(Sting filePath) 通过给...原创 2018-02-25 16:05:27 · 237 阅读 · 0 评论 -
(二)、Java I/O系统——字节流
在第一节中,我们了解了 File 类对于文件的操作。File对象封装了文件或者路径属性,但是不包括从/向文件读/写数据的方法,本节主要讲解Java的字节流。 I/O流解决的问题:设备与设备之间数据传输的问题。 Java流的分类:从流的方向上可以分为输入流和输出流,应用程序通过输入流读取数据,通过输出流发送数据。按照数据传输单位可以划分为字节流和字符流。 字节流读取的是文件中的二进制数...原创 2018-02-26 21:09:40 · 210 阅读 · 0 评论 -
(四)、Java I/O系统——序列化和反序列化
当创建对象后,程序运行时对象就会存在,但是程序停止时,对象也就消失了。如果希望对象在程序不运行的情况下仍然能够保存其信息,例如服务器端的session信息的保存,可以使用对象的序列化。本节主要学习使用ObjectOutputStream和ObjectInputStream实现对象的序列化以及反序列化,对对象进行存储和恢复。序列化:将内存中的对象写入到文件设备中反序列化:将文件设备中的对象数...原创 2018-03-03 21:33:29 · 233 阅读 · 0 评论 -
(六)、Java 多线程——线程安全问题
1、线程安全问题的出现在大多数的多线程应用程序中,两个或者两个以上的线程需要共享对同一数据的存取。这时可能发生多线程同时修改共享变量的情况,以在银行取钱来说,可以分为一下几个步骤: 1. 输入卡号和密码,系统判断是否匹配并有效 2. 用户输入支取金额 3. 系统判断账户可用余额是否足够支取 4. 如果满足支取条件则取款并更新余额,否则取款失败 我们使用两个线程来同时模拟取款操作:...原创 2018-03-05 22:55:30 · 558 阅读 · 0 评论 -
(七)、Java 多线程——死锁、线程间通信
1、死锁当两个线程相互等待对方释放同步代码块中的“锁对象”时就会发生死锁,Java虚拟机没有监测也没有采取措施来处理死锁情况,所以多线程编程中应该采取措施避免死锁出现。一旦出现死锁,整个程序既不会抛错也不会给出任何提示,只是所有线程处于阻塞状态,无法继续。 以打开空调为例:假设打开空调需要遥控器和电池两个资源public class OpenAirCondition extends ...原创 2018-03-06 23:07:42 · 433 阅读 · 0 评论 -
(八)、Java 网络编程
所谓计算机网络,就是把分布在不同地理区域的计算机与专门的外部设备用通信线路互联成一个规模大、功能强的网络系统,从而使众多的计算机可以方便地传递信心,共享资源。 计算机网络通常按照规模大小可以划分为:局域网、城域网、广域网 按照拓扑结构可以分为:星型网络、总线网络、环形网络、树形网络等1、OSI七层模型应用层表示层会话层传输层网络层数据链路层物理层2、Java...原创 2018-03-11 15:18:40 · 224 阅读 · 0 评论