随笔分类 - java
摘要:1. object类中提供的方法 2. 生产者消费者模型示例: 2.1 思路 2.2 实现Box 注意: 上面生产完毕后也需要加入notifyAll()方法, 如下get方法中 2.3 实现生产者 2.4 实现消费者 2.5 实现测试类
阅读全文
摘要:1. java中提供了以下几个类实现了线程安全: 2.除以上提供的几个线程安全类, 还有collections中也提供有线程安全的数据对象
阅读全文
摘要:1. 使用同步代码块, 格式如下: 1.1 同步代码块示例如下: 注:以上代码还是会有数据安全问题, 原因是每个线程使用的是各自new到的锁, 并非所有线程使用同一把, 改进如下: 多线程执行调用代码如下: 2. 使用同步方法 2.1 代码示例如下:
阅读全文
摘要:1. 线程优先级默认都是5, 可设置范围为1 ~ 10 设置线程优先级如下: 设置守护线程 正常情况主线程会等所有线程执行完成才会结束
阅读全文
摘要:1. 多线程的实现方式一: 1.5 代码实现参考如下 2. 多线程的实现方式二: 2.1 定义一个类 2.2 多线程实现
阅读全文
摘要:1. Properties作为Map集合的使用 2. Properties作为Map集合的特有方法 3. Properties和IO流结合使用的方法 3.1写入文件的代码如下: 3.2从文件读入到Properties对象的方法
阅读全文
摘要:1. 对象序列化流使用方法: 2. 对象反序列化流使用方法: 3. 引出几个问题: 用对象序列化流序列化了一个对象后,如果我们修改了对象所属的类文件,读取数据会不会出问题呢? 如果出问题了, 如何解决呢? 给对象所属的类中加入一个值: private static final long serial
阅读全文
摘要:1. 使用字符输入与输出流复制文件 2. 字符输入流结合字符打印流实现复制文件
阅读全文
摘要:1.打印流分类介绍 2. 字符打印流使用 3. 字节打印流使用:
阅读全文
摘要:1.字节流的读取与写入 2. 字符流的读取与写入: 小结: 以上无论字节流还是字符流,都可读取一个或多个单位,如下:
阅读全文
摘要:对文件的操作 几个stream类中接受的其实就是file对象: 字节缓冲流使用范例: 4种字节流方式实现复制文件/图片: 字符流读写文件: 字符流复制文件(实现类一): 字符流复制文件(实现类二): 字符缓冲流复制文件(一): 字符缓冲流复制文件(二):
阅读全文
摘要:1. 方式一: 静态初始化 int[][] arr = {{1,2},{3,4,5},{6,7...}...} int[][] arr = new int[][]{{1,2},{3,4,5},{6,7...}...} . 2. 方式二: 动态初始化 int[][] arr = new int[3][
阅读全文
摘要:1.可变参数只能解决部分场景的重载 图上所示, method01可变参数只能解决int类型的重载, 如果传入string等类型会报错; 在方法内部把参数当作int数组使用即可.
阅读全文
摘要:1. 自定义class类 public class user implements Comparable<user>{ int id; ...... // 返回值决定排序顺序,是jvm规定的,不可自定义 public int compareTo(user obj) { if (this.id ==
阅读全文
摘要:1. 静态代码块语法: public class ClassName{ static {...} static {...} static {...} public static void main(String[] args) { ... } } 2. 静态代码块在类加载时执行, 并且只执行一次.
阅读全文
摘要:1. private关键字的作用: 1. 用于封装属性为私有属相, 使得其不能在被对象或类名调用到 2. 要调用private封装的属相, 需要定义对应的get和set方法 6. public class ClassTest { public static void main(String[] ar
阅读全文
摘要:static关键字的作用可理解为静态属相, 如静态变量, 静态方法, 即直接使用类名来访问, 虽然使用对象调用也能执行, 但不建议这么用; 不使用static修饰的变量或方法都只能使用对象调用 总结: 对象能掉类中一切属相和方法(带不带static都可以), 但是类名调用只能调用带static的属相
阅读全文