• vivo面试学习1(io和nio)


    一、io流(一次从open到底层的操作)

    输入和输出流

    IO流
    字节流 Reader、Writer
    字符流 InputStream、OutputStream

    字节流:可以处理所有bit为单位存储的文件,也就是说可以处理所有的文件,但是在处理字符上的速度不如字符流

    字符流:只能处理字符,但处理字符的能力很快 

    一次读文件的操作:

    采用FileInputStream的read()方法,每次从源文件中读取512个字节,存储在缓冲区buffer中,再将以buffer中的值构造的字符串new String(buffer)显示在屏幕上。

    一次写文件的操作:

    采用System.in.read(buffer)从键盘输入一行文字,存储在缓冲区buffer中,再用FileOutStream的write()方法,将buffer中的内容写入文件write.txt中。 

    二、NIO

    IO和NIO的区别
      IO NIO
    对象 面向流 面向缓冲
    是否阻塞
        selector监视Channel

     Java NIO的选择器允许一个单独的线程来监视多个输入通道。

    只要Channel向Selector注册了Channel向Selector注册了某种特定的事件,Selector就会监听这个事件是否发生,一旦发生某个事件,便会通知对应的Channel。

    使用选择器,借助单一线程,就可对数量庞大的i/o通道实施监控和维护。

  • 相关阅读:
    css3与gpu加速
    前端集成解决方案小结
    body内html标签的选用
    在win8下快速搭建angularjs测试环境以及可能遇到的问题
    javascript快速排序
    Sublime Text2配置python环境
    python学习第一天
    开机自检
    各种排序算法及c语言实现
    算法表示
  • 原文地址:https://www.cnblogs.com/nickup/p/9693477.html
Copyright © 2020-2023  润新知