zoukankan      html  css  js  c++  java
  • 20145229吴姗珊 《Java程序设计》两天小总结

    20145229吴姗珊 《Java程序设计》两天小总结

    教材学习内容总结

    第十章 输入输出

    1.java将输入输出抽象化为串流,数据有来源及目的地,衔接两者的是串流对象
    2.从应用程序角度来看,如果要将数据从来源取出,可以使用输入串流(java.io.InputStream 实例),如果要将数据写入目的地,可以使用输出串流
    3.串流继承架构
    System.in:文本模式下取得整行用户输入
    System.err:标准错误输出串流,用来立即显示错误信息
    System.setErr:重新指定标准错误输出串流
    setIn():使用 setIn() 方法指定 InputStream 实例,重新指定标准输入来源
    setOut():使用 setOut() 方法指定 PrintStream 实例,将结果输出至指定的目的地
    4.ObjectInputStream与ObjectOutputStream:ObjectInputStream 提供 readObject() 方法将数据读入为对象,ObjectOutputStream 提供 writeObject() 方法将对象写至目的地
    5.Thread:如果想要加装主线程,就要创建 Thread 实例,要启动额外的主线程就是调用 Thread 实例的 start() 方法
    6.在 java 中,任何线程可执行的流程都要定义在 Runnable 的 run() 方法,Thread 类本身也操作了 Runnable 接口在 java 中,任何线程可执行的流程都要定义在 Runnable 的 run() 方法,Thread 类本身也操作了 Runnable 接口
    7.ynchronized 要求达到的所标示区块的互斥性与可见性,互斥性是指 synchronized 区块同时间只能有一个线程,可见性是指线程离开 synchronized 区块后,另一线程接触到的就是上一线程改变后的对象状态

    第十一章 线程与并行API

    1.通过创建Thread实例来执行Runnable实例定义的> run方法可以实现多个线程。
    2.继承Thread类也可以进行多个进程,但没有Runnable的弹性好,运用Lambda表达式也可以简化程序。
    3.线程生命周期:Daemon:在所有的非Daemon线程结束时,JVM就会自动终止
    4.synchronized&&volatile:线程存取同一对象相同资源时可能会引发竞速情况
    5.CopyOnWriteArrayList操作了List接口,这个类的实例在写入操作是,内部会建立新数组,并复制原有数组索引的参考,然后在新数组上进行写入操作,写入完成后,再将内部原参考旧数组的变量参考至新数组
    6.ConcurrentMap是Map的子接口,其定义了putIfAbsent()、remove()、replace()等方法。这些方法都是原子操作
    7.ConcurrentHashMap是ConcurrentMap的操作类,ConcurrentNavigableMap是ConcurrentMap的子接口,其操作类为ConcurrentSkipListMap,可视为支持并行操作的TreeMap版本
    8.CopyOnWriteArraySet操作了Set接口,与CopyOnWriteArrayList相似

  • 相关阅读:
    【转】关于LWF——线性工作流
    【转】对抗拖库 ―― Web 前端慢加密
    【转】用C#调用Windows API向指定窗口发送
    使用 Redis 如何设计分布式锁?
    SpringBoot如何使用WebSocket实现前后端交互?
    Redis缓存使用中的热key问题
    Spring的BeanUtils的copyProperties方法需要注意的点
    解决github中图片不显示的问题
    java中JsonSerializer的用法(前后端单位转换必备)
    Spring Boot2.X中findOne的用法
  • 原文地址:https://www.cnblogs.com/20145229ss/p/5385003.html
Copyright © 2011-2022 走看看