• IO/NIO


    1.转换流,Buffered

    BufferedWriter out=new BufferedWriter(new OutputStreamWriter(System.out));

    BufferedReader in= new BufferedReader(new InputStreamReader(System.in);

    2.数据流

    3.打印流

    1、PrintStream 可以方便的完成输出的功能。

    2、在以后的输出中基本上都使用PrintStream 完成,因为比较方便一些。(不会抛出异常,自动flush)

    3、PrintStream 属于装饰设计模式。

    4.Object 流

    interface Serializable
    关键字transient (在序列化的时候不予考虑)
    interface Externalizable

    NIO与传统IO的区别 白话版
    http://blog.csdn.net/zhouhl_cn/article/details/6568119
    Java IO的各种流是阻塞的。这意味着,当一个线程调用read() 或 write()时,该线程被阻塞,直到有一些数据被读取,或数据完全写入。该线程在此期间不能再干任何事情了。 Java NIO的非阻塞模式,使一个线程从某通道发送请求读取数据,但是它仅能得到目前可用的数据,如果目前没有数据可用时,就什么都不会获取。而不是保持线程阻塞,所以直至数据变的可以读取之前,该线程可以继续做其他的事情。 非阻塞写也是如此。一个线程请求写入一些数据到某通道,但不需要等待它完全写入,这个线程同时可以去做别的事情。 线程通常将非阻塞IO的空闲时间用于在其它通道上执行IO操作,所以一个单独的线程现在可以管理多个输入和输出通道(channel)。
     

    序列化和反序列化

    http://www.cnblogs.com/xdp-gacl/p/3777987.html

    概念和用途:把对象转换为字节序列的过程称为对象的序列化。
                   把字节序列恢复为对象的过程称为对象的反序列化。
                 对象的序列化主要有两种用途:
                 1) 把对象的字节序列永久地保存到硬盘上,通常存放在一个文件中;
                 2) 在网络上传送对象的字节序列。

    过程:

             对象序列化包括如下步骤:
      1) 创建一个对象输出流,它可以包装一个其他类型的目标输出流,如文件输出流;
      2) 通过对象输出流的writeObject()方法写对象。
      对象反序列化的步骤如下:
      1) 创建一个对象输入流,它可以包装一个其他类型的源输入流,如文件输入流;
      2) 通过对象输入流的readObject()方法读取对象。 

    serialVersionUID(序列化版本号)到底有什么用:,Java的序列化机制是通过判断类的serialVersionUID来验证版本一致性的

    InvalidCastException

    http://swiftlet.net/archives/1268

             只要我们自己指定了serialVersionUID,就可以在序列化后,去添加一个字段,或者方法,而不会影响到后期的还原,还原后的对象照样可以使用,而且还多了方法或者属性可以用。

    显式地定义serialVersionUID有两种用途:
        1、 在某些场合,希望类的不同版本对序列化兼容,因此需要确保类的不同版本具有相同的serialVersionUID;
        2、 在某些场合,不希望类的不同版本对序列化兼容,因此需要确保类的不同版本具有不同的serialVersionUID。

  • 相关阅读:
    计算机网络
    计算机网络
    Spring Boot自定义参数不提示、@ConfigurationProperties报错
    计算机网络概述
    面试题:类的初始化与实例的初始化
    面试题:自增变量
    最近做了一个Spring Boot小项目,大家帮忙找找bug吧, http://www.dbeetle.cn
    设计模式
    6.7 使用show profile 进行sql分析
    6.6 构建大表
  • 原文地址:https://www.cnblogs.com/kydnn/p/5003794.html
Copyright © 2020-2023  润新知