集合体系汇总 1. Collection体系集合 1.1 List 表List接口特点:有序、有下标、元素可重复补充:继承了父接口提供的共性方法,同时定义了一些独有的与下标相关的操作方法 List实现类:ArrayList、Vector、LinkedList ① ArrayList 类(数组)特点: 1. 数组结构实现,查询快、增删慢; 2. JDK1.2版本,运行效率快、线程不安全; 场景:注册( 2016-04-28 02_编程语言 > 01_Java > 01_JavaSE > 03_泛型集合 #JavaSE #集合
线程安全集合 1. Collection体系下线程安全集合Collection体系集合下,除Vector以外的线程安全集合(蓝色):Collections工具类中提供了多个可以获得线程安全集合的方法:public static <T> Collection<T> synchronizedCollection(Collection<T> c)public static < 2016-04-28 02_编程语言 > 01_Java > 01_JavaSE > 03_泛型集合 #JavaSE #线程安全集合 #JUC
BigDecimal类和方法 不变的,任意精度的带符号的十进制数字。 位置:java.math包中 java.lang.Object – java.lang.Number —- java.math.BigDecimal 作用:精确计算浮点数 创建:BigDecimal bd = new BigDecimal(“1.0”); 方法: BigDecimal add(BigDecimal db) / 2016-04-28 02_编程语言 > 01_Java > 01_JavaSE > 02_面向对象 #JavaSE #BigDecimal
Object类和方法 1234567class Anything { // do something}// 等价于 ↓↓↓class Anything extends Object { // do something} 在Java中所有的类都直接或间接的继承了 java.lang.Object 类。Object是一个特殊的类,它是所有类的父类,是Java类中最高层的 2016-04-28 02_编程语言 > 01_Java > 01_JavaSE > 02_面向对象 #JavaSE #Object
String类和方法 字符串必须包含在一对双引号""内 声明字符串变量必须经过初始化才能使用,否则会报变量未被初始化错误 创建String s1 = “hello,world”; // 推荐String s2 = new String(“hello,world”); 拼接+连接字符串; // 字符串太长时,可以通过+号将字符串分两行显示 2016-04-28 02_编程语言 > 01_Java > 01_JavaSE > 02_面向对象 #JavaSE #String
String类和方法 1. String特点 字符串是常量,创建后不可改变; 字符串字面值存储在字符串池中,可以共享; JVM内存管理中:栈、堆、方法区(方法区中有常量池,常量池中嵌套了字符串池) 先来看个简单的案例: 1234567891011public class TestString { public static void main(String[] args) { String 2016-04-28 02_编程语言 > 01_Java > 01_JavaSE > 02_面向对象 #JavaSE #String
hashCode与哈希冲突 1. hashCode的特性(1)HashCode的存在主要是用于查找的快捷性,如Hashtable,HashMap等,HashCode经常用于确定对象的存储地址; (2)如果两个对象相同, equals方法一定返回true,并且这两个对象的HashCode一定相同; (3)两个对象的HashCode相同,并不一定表示两个对象就相同,即equals()不一定为true,只能够说明这两个对象在一个散 2016-04-28 02_编程语言 > 01_Java > 01_JavaSE > 02_面向对象 #JavaSE #hashCode #哈希冲突
abstract,static,final 为什么不能用abstract修饰属性,私有方法,构造器,静态方法,final的方法? abstract抽象: 程序中不能被new创建的?父类,抽象,不完整,不具体,不能独立存在。通过 abstract 修饰类,意为抽象类,不能new对象abstract: 抽象的,似是而非,像却又不是,具备某种对象的特征,但不完整abstract修饰类概念: 不够完整,不够具体,不能独立存在语法: abstrac 2016-04-28 02_编程语言 > 01_Java > 01_JavaSE > 02_面向对象 #JavaSE #抽象 #静态 #final
interface接口 1.什么是接口Java为单继承,当父类的方法种类无法满足子类需求时,可实现接口扩容子类能力。即:Java中使用抽象类/父类表示通用属性时,每个类只能继承一个类,假如子类已经从一个父类继承了,就不能再继续继承另外的父类。但每个类可以实现多个接口,这样子类就拥有了更多的能力。 微观概念:接口是一种能力和约定。 接口的定义:代表了某种能力 方法的定义:能力的具体要求 2.接口语法API( 2016-04-28 02_编程语言 > 01_Java > 01_JavaSE > 02_面向对象 #JavaSE #接口
四种访问权限 面向对象设计的2个基本问题: 如何把变动的部分与保持不变的部分区别开来? 开发者如何约定权限来修改和改进代码,并确保客户代码不会因为这些改动收到影响? Java使用访问权限修饰符来供开发人员向程序员指明可用和不可用的,以及访问权限控制等级: 包访问权限(没有修饰符关键词) public - 公开的 protected - 保护的 private - 私有的 Java中构建类库的概念以及 2016-04-28 02_编程语言 > 01_Java > 01_JavaSE > 02_面向对象 #JavaSE #访问权限