分类: Java

23 篇文章

对象比较
对象比较 Object.equals 介绍 Object类的方法 默认情况下,比较的是对象的引用地址 通常重写equals方法,比较对象的内容 Comparable<T> 介绍 java.lang 实现对象自定义比较 方法 方法 描述 int compareTo(T o) 小于指定对象返回负数,等于指定对象返回0,大于指定对象返回正数…
集合
集合 介绍 java中的容器,用来存储对象 存储基本数据类型时会自动装箱为对象 分为两大核心接口,Collection和Map 集合与数组 集合 数组 存储元素 对象 基本数据类型,对象 容量 自动扩容 固定 存储方式 有的集合是连续存储,如列表.有的集合不是,如链表 元素是连续存储的 Collection 介绍 java.util 定义了集合的基…
foreach
foreach 介绍 快速遍历集合或数组的一种语法糖 语法 for (元素类型 变量名 : 数组或集合){....}
Stream
Stream 介绍 java8引入的种数据处理方法,位于java.util.stream包 主要用于对集合或其他数据源的操作 分为三种操作,创建流,处理流和终结流 特点 流本身不存储数据 每一次处理流都会返回一个Stream对象(链式调用) 函数式风格处理数据 流操作是惰性的,不执行终结流操作,声明的操作就不会立即执行,只有执行了终结流操作,数据才…
方法
方法 默认方法 介绍 java8之后引入的新特性,允许在接口中定义带方法体的方法 特点 默认方法可以被接口的实现类继承 默认方法可以被接口的实现类重写 默认方法的访问修饰符必须是public,因为要让该接口的实现类能够访问该方法 实例 interface Animal{ default void eat(){ System.out.println(…
反射
反射 介绍 运行时动态的获取类并进行操作 类对象 介绍 反射的核心类Class,表示类的元信息 获取类对象 Class Object.class 获取Object类的Class对象 Class Class.forName(className) 根据全限定类名获取Class对象 Class object.getClass() Object类的方法,获…
Lambda表达式
Lambda 介绍 java1.8的新特性,能够简洁的实现接口方法的调用 基本语法 (args) -> expression args: 参数列表,数据类型可以忽略,如果没有参数,可以使用空括号(),单个参数可以忽略括号 ->: Lambda运算符,表示由...生成 expression: Lambda表达式主题,可以是单个表达式或代码…
抽象类
抽象类 介绍 java的一种引用类型,用于为其它类提供一个通用的基类 特点 可以有方法的实现,也可以有抽象方法 无法实例化,但可以有构造方法 单继承 使用abstract关键字标识 abstract 不能与final同时修饰一个方法或类,因为final修饰的类不能被继承,修饰的方法不能被重写 不能与private 同时修饰一个方法 示例 publi…
泛型
泛型 介绍 泛型(Generics),类型参数化,将所操作的数据类型指定为一个参数 标识符 标识符 描述 E 表示集合等元素 T 表示类型参数 K key V value N 数据类型 ? 不确定类型 通配符 上限通配符 介绍 extends,表示泛型类型的上限 规定泛型只能是某个类或接口的子类或实现类,或本身 示例 <T extends S…
接口
接口 介绍 java中的一种引用类型(Interface),仅能包含抽象方法,java1.8之后支持默认方法和静态方法 特点 接口中的方法默认被public abstract修饰 接口中的属性默认是public static final,即常量 一个类可以实现多个接口(implements) 实现了接口的类必须实现接口的抽象方法 接口支持多继承,一…
函数式接口
函数式接口 介绍 仅包含一个抽象接口的方法 特点 接口中有且仅有一个抽象方法 可以包含静态方法和默认方法 使用@FunctionInterface注解标识 使用 java提供了大量的内置函数式接口,位于java.util.funciton包中 也可以自定义函数式接口 示例 @FuncitonalInterface interface Calcula…