zoukankan      html  css  js  c++  java
  • 5.4Java IO流开篇

    5.4Java IO流开篇

    本章内容

    • IO介绍---input、output--->输入输出流

    • File

    • 字节流--->流动的是数据,在计算机当中存储为字节

    • 字符流--->我们直接操作的是字符(有组件帮助我们进行字节流和字符流的管理)

    • CommonsIO


    后期开发过程中更多的关注功能(将客户的需求转成代码)而不是技术(技术上是架构师去做的,一步一步来)

    IO介绍

    IO简介:

    • io是指input、output,流是一个抽象的(abstract)概念

    • 从一端移动到另一端。--->一端指:程序。另一端指:数据源(data source)(文件、数据库、网络...存储数据介质的地方)--->源头和程序之间的管道称之为:IO流

    • 流是一个抽象、动态的概念,是一连串动态的数据集合

    流是一个流动的概念,这就涉及到数据源与程序的交互

    什么是数据源(data source)

    提供原始数据的原始媒介

    常见的数据源:

    1. 数据库

    2. 文件

    3. 其他程序

    4. 内存

    5. 网络连接

    6. IO设备

    ...

    数据与程序交互的方式---字节流

    特点:

    • 一切以程序为中心

      • 进入程序称为输入流---读进来

      • 离开程序称为输出流---写出去

    • Java程序中对数据的输入/输出操作以"流"(stream)方式进行

      • J2SDK提供了各种各样的"流"类,用以获取不同种类的数据,程序中通过标准的方法输入或输出数据

      • Java的流类型一致位于java.io包中

    核心类

    File类--->数据源

    文件类--->文件存储到操作系统的硬盘中

    InputStream类

    字节输入流

    OutputStream类

    字节输出流

    Reader类

    字符输入流

    Writer类

    字符输出流

    Closeable接口--->Java告知操作系统释放资源

    关闭流接口

    Flushable接口--->Java告知操作系统强制刷新--->避免数据滞留在管道中

    刷新流接口

    Serializable接口--->Java为了便于对象存储到文件中,存储对象称之为序列化--->还原对象称为反序列化

    序列化接口

    最核心的五类三接口

    实际上只需要把程序对接起来就可以实现读内容、写内容的即实现了文件的拷贝--->上传和下载文件--->根据流向来分输入输出流

    按功能分读写
    直接操作数据源---节点流(存储节点、网络节点---数据源)

    可以直接从数据源或目的地读写数据---后台服务

    在节点流之上为了提高效率、提升性能---包装流(设计模式当中称之为装饰设计模式)

    不直接连接到数据源或目的地,是其他流进行封装。起到简化操作和提高性能的作用

    节点流和处理流的关系

    1. 节点流处于io操作的第一线,所有操作必须通过他们进行

    2. 处理流可以对其他流进行处理(提高效率或操作灵活性)

    按方向

    输入流、输出流

    按功能

    节点流、处理流

    按数据

    字节流(字节操作字节)、字符流(操作纯文本的)

    • 字节流:input、output

    • 字符流:reader、writer ---> 底层原理还是字节流,自动搜寻了指定的码表(字符集表)

      • 人们根据二进制翻译而来的大量的字符集

      • 字符集是对应的,读的时候是什么字符集写的时候也要是什么字符集,不然计算机底层识别不出来就会出现乱码

      •  

    It's a lonely road!!!
  • 相关阅读:
    Install and Configure OSSEC on Debian 7&8
    手动替换WORDPRESS的GOOGLE字体等加速【非插件】
    LDAP常用命令解析
    Install guide for OpenLDAP and GOsa 2 on Ubuntu & Debian
    Linux 转发 email Redirect local emails to a remote email account
    Ubuntu,忘记了root密码,怎么重置?
    LDAP 原理图解
    CAS实现SSO单点登录原理
    cacti 安装与 与不能显示图像故障解决方案
    LDAP概念和原理
  • 原文地址:https://www.cnblogs.com/JunkingBoy/p/14736438.html
Copyright © 2011-2022 走看看