您的位置:首页 > 编程语言 > Java开发

20145120 《Java程序设计》第6周学习总结

2016-04-10 21:37 501 查看

20145120 《Java程序设计》第6周学习总结

教材学习内容总结

java.io.InputStream、java.io.OutputStream实例分别作为输入、输出串流的代表对象

不使用InputStream和OutputStream时要用close()方法关闭串流

InputStream的read()尝试读入byte数组长度的数据并返回实际读入的字节

OutputStream的write()方法可指定byte数组、数组索引、数据长度进行输出



---



尝试指定了classpath然而Copy还是不成功,时间有限,跳过了

System.in和System.out代表标准输入、输出,对应文本模式

标准输出可以重新导向至文档

System.err,标准错误输出流,用于立即显示错误信息

FileInputStream,FileOutputStream,指定文件名创建实例,一旦创建文档就开启,可读写数据,不用时要用close()关闭文档

byteArrayInputStream,byteArrayOutputStream类似上方,可操作byte数组

Scanner类可作为InputStream打包器

BufferedInputStream,BufferedOutputStream尽量读取足够多的数据到缓冲区操作,提高效率

DataInputStream,DataOutputStream



ObjectInputStream,ObjectOutputStream



java.io.Reader,java.io.Writer针对数据的读入写出,抽象数据来源与目的地,不使用时要用close()关闭

Java.lang.Runnable,独立设计线程,插入点在run()中

龟兔赛跑:



---



线程生命周期,若一个线程被标注为Daemon时,所以非Daemon线程结束后JVM就会关闭



然后我把setDaemon删掉了



Orz停不下来。。。



加回来之后却神奇特发现已经不能再Orz了,搞不懂啊

用setPriority()可设定线程优先权,可设定1到10,默认是5

线程完成run()之后就会进入Dead,Dead的线程不能在调用start()

每个对象都有个内部锁定(Intrinsic Lock),在方法标注synchronized,线程必须取得对象锁定才能开始



使用volatile



---



---



本周代码托管截图



学习进度条

代码行数(新增/累积)博客量(新增/累积)学习时间(新增/累积)重要成长
目标1000行16篇300小时
第一周20/201/18/8
第二周71/911/29/17
第三周229/3201/313/30
第四周280/6001/416/46
第五周500/11001/518/64
第六周200/13002/712/76

参考资料

Java学习笔记(第8版)

《Java学习笔记(第8版)》学习指导

...
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: