08 2019 档案
摘要:HashSet集合中,数据结构是哈希表。线程非同步。 其保证元素唯一性的原理,是判断元素的HashCode值是否相同。 如果相同,还会继续判断元素的equals方法,是否为true。 存哈希表 要重写 hashCode & equals方法 存二叉树 要实现 comparable 覆盖compare
阅读全文
摘要:MAP集合:该集合存储键值时,一对一往里面存。而且要保证键的唯一性。 功能: 1、添加 put(k key ,V value) put方法会返回这个建对应的原来的值,头一次是空 ··· 添加时出现相同的键,后键会覆盖前键的值 putAll(Map<? extends K, ? extend V>m)
阅读全文
摘要:好处: 1、将运行时出现的问题 ClassCastException,转移到了编译时期、提前确定类型,保证安全问题。 2、避免了强制转换 泛型格式: 通过<>来定义操作引用的数据类型。 在使用JAVA提供的对象时,什么时候写泛型呢 interface Inter<T>{ void show(T t)
阅读全文
摘要:Set:无序、不可以重复元素 |-- HashSet : 数据底层结构是哈希表。线程是非同步的。 保证元素唯一性的原理:判断元素的hashcode的值是否相同 如果相同,还会继续判断元素的equals方法,是否为true。 |-- TreeSet:可以对Set集合中的元素进行排序。 底层数据结构是二
阅读全文
摘要:Collection - | List : 元素是有序的,元素可以重复。因为该集合体系有索引。 List : ArrayList : 底层的数据结构使用的是数组结构。 (线程不同步 -- 快,效率高) 特点在于: 查询速度很快!! 但是 增删 很慢。。 LinkedList :底层的数据结构使用的是
阅读全文
摘要:基本数据类型转成字符串: 基本数据类型+“” 基本数据类型.toString(基本数据类型值) 如: Integer.toString(34) // 将整数34 变成 "34" 字符串转成基本数据类型: 将一个字符串转成整数: int number = Integer.parseInt(String
阅读全文
摘要:StringBuffer (是一个容器) 特点: 1,长度是可以变化的。 2,可以操作多种数据类型。 3,最终会通过toString方法变成字符串。 C create U update R read Ddelete 1 / 存储 :StringBuffer append(): 将指定数据作为参数添加
阅读全文
摘要:public class beginning { public static void main(String[] args) { Res r = new Res(); new Thread(new Test(r)).start(); new Thread(new TestDemo(r)).start(); }...
阅读全文
摘要:单例设计模式:解决一个类在内存中只存放一个对象。 对象在内存中的唯一性 1. 为了避免其它程序过多建立该类对象。先禁止其它程序建立该类对象; 2. 还为了让其它程序可以访问到该类对象,只好在本类中自定义一个对象; 3. 为了方便其他程序对自定义对象的访问,可以提供一些访问方式。 怎么用代码体现呢?
阅读全文
摘要:synchronized(对象) 同步(锁) { 共享数据运行的代码。 } 如何找问题: 1. 明确哪些代码是多线程运行代码。 2. 明确共享数据。 3. 明确多线程运行代码中哪些语句是操作共享数据的。 同步函数的锁是:this,P141 如果同步函数被静态修饰后,使用的锁是什么呢? 经过验证,不是
阅读全文
摘要:需求:多窗口售票实例
多线程安全问题, synchronized关键字解决安全问题。
(使用条件及优缺点)
P 139
阅读全文
摘要:需求:多窗口售票
如何实现、实现方式,怎么避免100张卖成400张
实现多线程运行的两种方式: 继承Thread & 声明Runnable (区别、好处、及使用方式)
P137
阅读全文