IT十八掌掌第十五天课程总结

今天学完IT十八掌第十五天java基础课程:

学习内容:

1.文件夹复制

---------------

1.分析

srcFolder + destFolder

d:/a        d:/b

d:/b/a/xxx

2.递归取出所有文件和目录 + FileIO(FileInputStream/FileOuputStream)

3.

4.

d:/xxx/x/  a/a1/a.txt        d:/b/

9     10

d:/xxx/xx/a/a1/a2/b.txt            d:/b/a/a1/a.txt

RandomAccessFile

--------------------

随机访问文件。

1.Object --> java.io.RandomAccessFile

2.实现接口:DataInput DataOuput

3.seek(int long);

定位下表

4.skipBytes(int bytes);

跳过字节数

5.

串行化/序列化

--------------------

1.将对象转换成字节数组,通过输入流写入;然后反串行化将对应输出流中的字节数组重新转换成对象

2.

3.

4.

JavaBean实现串行化需要实现Serializable接口,标志性接口。

------------------------------------------------------

1.java.io.Serializable

2.标识行接口,没有任何方法。

3.JVM需要判定该接口做串行化处理。

4.

5.不需要串行化的属性可以用transient修饰

遇到的问题:

1.文件夹复制的健壮性处理过程复杂,难懂

2.java串行化技术和反串行化技术

3.

需要帮助的问题

1.文件复制

时间: 2024-10-09 02:08:45

IT十八掌掌第十五天课程总结的相关文章

IT十八掌掌第十四天课程总结

今天学完IT十八掌第十四天java基础课程: 学习内容: BufferedOutputStream:缓冲区字节输出流 --------------------------------- 1.Object --> OutputStream --> FilterOutputStreasm --> BufferedOutputStreamss 2.使用装饰模式 3.close() BufferedInputStream : 缓冲区字节输入流 --------------------------

IT十八掌掌第十六天课程总结

今天学完IT十八掌第十六天java基础课程: 学习内容: 序列化 ---------------- 将对象用于网络间传输或者本次化存储. 也叫串行化 过程将java对象转换成byte[] java.io.Serializable    //可串行化接口,标识性.JVM. 串行化版本UID :            // 深度复制是指将整个对象图进行复制. transient :                //临时关键字. ObjectInputStream / ObjectOuputStre

IT十八掌掌第十天课程总结

今天学完IT十八掌第十天java基础课程: 学习内容: 基本类型 --------------- 包装类 int        Integer byte    Byte short    Short long    Long float    Float double    Double boolean    Boolean char    Character                //字符类 JDK 1.5之后出现的新特性, 自动装箱: Integer i = 12 ;        

IT十八掌掌第七天课程总结

今天学完IT十八掌第七天java基础课程: 学习内容: 1,复习多态,抽象类与接口异同,适配器模式 2,匿名内部类 new InterfaceDemo(){具体方法实现 }; 3,异常 -------------------------------- Throwable |---Error |---Exception 举例:RuntimeException运行时异常 getMessage() toString()方法 printStackTrace() 打印栈跟踪信息; 举例: throws  

IT十八掌掌第四天课程总结

今天学完IT十八掌第四天java基础课程: 学习内容: java基本数据类型: ----------------------- byte    :    一个字节,-128 ~ 127  = 256 short    :    两个字节, -32768 ~ 32767 int        :    四个字节, long    :    八个字节, float    :    4字节 double    :    8字节 boolean    :    1个字节 char    :    2个字

IT十八掌掌第十三天课程总结

今天学完IT十八掌第十三天java基础课程: 学习内容: HashMap HashSet entrySet() |--getKey( ) |--getValue( ) keySet() |--get(Key) ---------- 有无缓冲区性能评测 缓冲区的原理是先将字符写入数组,然后在批量写入文件,避免对物理文件的频繁访问,提高效率. 行分割符在java中可以通过方法得到. 系统属性名是line.separator. 不同平台的行分隔符是不同的. windows7:\r\n macOS  

IT十八掌掌第十七天课程总结

今天学完IT十八掌第十七天java基础课程: 学习内容: 多线程主要应用场景是创建灵活响应的桌面程序. Socket : ---------------------- 1.ServerSocket                //侦听 ServerSocket ss = new ServerSocket(port);    //0-1023 Socket socket = ss.accept();                // 服务器 ----------------- 1.接收sock

IT十八掌掌第五天课程总结

今天学完IT十八掌第五天java基础课程: 学习内容: 1,jvm栈空间设置 堆空间设置:    java -Xmx<size> java -Xms<size> 栈空间设置: java -Xss<size> 死循环不会导致栈溢出,因为在不断的压栈,弹栈 方法不断迭代会导致栈溢出,不断的在压栈(方法帧) 2,继承 构造函数: 为什么没有返回值. 因为构造函数就是为了返回对象的,固定了,所以没必要定义返回值类型. 代码块 ----------------------- 构造

IT十八掌掌第十二天课程总结

今天学完IT十八掌第十二天java基础课程: 学习内容: HashMap和HashTable底层都是采用数组+链表实现的. 结合了数组的寻址快,链表增删快的特点.使用散列算法(hash算法)将元素分配到数组的元素当中, hash分区默认16个,每个分区内存储的是链表 1,算出hashcode,进行&0xof取出后四位初步比较,确定分区 2,然后拿对象和链表中每个对象相比较,比较每个对象的hash码是否相同. 1. 判断hashcode是否相同 2.判断是否同一对象或者equals返回true 所