本帖最后由 小石姐姐 于 2017-12-23 10:24 编辑
final:修饰符,可以用于修饰类,成员方法和成员变量 final所修饰的类:不能被继承,不能有子类 final所修饰的方法:不能被子类重写 final所修饰的变量:是不可以修改的,是常量
继承: 使用方法: extends 格式:权限修饰符 class 子类类名 extends 父类类名 {} 继承的特点: Java语言只支持单一继承,只能继承一个父类(一个儿子只能有一个亲爹) Java语言支持多层继承(一个儿子可以有一个亲爹,还可以有一个亲爷爷) 继承中成员变量的特点 子类只能获取父类非私有成员 子父类中成员变量的名字不一样直接获取父类的成员变量 子父类中成员变量的名字一样获取的是子类的成员变量 静态 static:静态成员方法 没有static:非静态的成员方法 静态方法中不能直接调用非静态的成员方法,可以调用静态的成员方法 static特点: 被所有的对象所共享 可以直接使用类名来调用 静态所修饰的成员加载优先于对象 随着类的加载而加载 抽象类和接口 抽象类 abstract:关键字,用于修饰方法和类 注意:一个类继承了抽象类需要重写他所有的抽象方法,否则这个类就得是抽象类 一个子类继承了抽象类后只有两种选择: 1.重写抽象类中的抽象方法(可以是空实现) 2.定义为抽象类 抽象类的特点: 成员变量 可以有成员变量 可以有常量 成员方法 可以有抽象方法 可以有非抽象方法 构造方法 可以有构造方法,需要对类的成员变量进行初始化 abstract不能与final,private共存 利用抽象起到规范作用 接口 定义;接口是一个比抽象类还抽象的类,接口里所有的方法全是抽象方法,接口和类的关系是实现. implements 创建接口 interface接口名{} 接口的成员特点: 只能有抽象方法 默认且只能使用publicabstract修饰方法 建议:建议大家手动的给上默认的修饰符 注意: 接口不能创建对象(不能实例化) 类与接口的关系是实现关系,一个类实现一个接口必须实现它所有的方法 默认使用publicstatic final修饰成员变量 关系: 类与类:继承关系,单一继承,多层继承 类与接口:实现关系,多实现 接口与接口的关系:继承关系,多继承 接口的优点 1.类与接口的关系,实现关系,并且是多实现,一个类可以实现多个接口 类与类之间是继承关系,Java中的继承是单一继承,一个类只能有一个父类 打破了继承了局限性. 2.对外提供规则(USB接口) 3.降低了程序的耦合性(实现模块化开发,定义好规则,第个人实现自己的模块,提高了开发的效率)
权限修饰符 不写(default):在同一包中可见 private:私有,仅在所在类可见 public:公开的,整个项目可见 protected
内部类 成员内部类:类中,方法外 在内部类当中,可以直接访问外部类的成员,包括私有成员 匿名对象 匿名对象:没有名字的对象(没有变量引用的对象) 匿名对象的应用场景: 当方法只调用一次的时候可以使用匿名对象 可以当作参数进行传递,但是无法在传参之前做其他的事情 注意:匿名对象可以调用成员变量并赋值,但是并没有意义 system:系统类 Date:时间类 表示特定的瞬间,精确到毫秒,他可以通过方法来设定自己所表示的时间,可以表示任意的时间
SimpleDateFormat: 构造方法: SimpleDateFormat():使用默认的模式进行对象的构建 SimpleDateFormat(Stringpattern):使用指定的指定的模式进行对象的构建 如:"yyyy年MM月dd日HH:mm:ss" 格式化:
Stringformat(Date date) 解析: Dateparse(String source) Calendar:日历 提供了一些操作年月日的方法 包装类 由于基本数据类型只能做一些简单的操作和去处,所以Java为我们封装了基本数据类型,为每种基本数据类型提供了包装类 包装类就是封闭了基本数据类型的类,为我们提供了更多复杂的方法和一些变量 Integer: 构造方法: Integer(intvalue) Integer(Strings) 成员方法: String--->int intintValue():转换为int类型 staticint parseInt(String):转换为int类型,无需创建对象 int--->String 直接+"":直接加双引号转换为String类型 StringtoString(): staticString toString(): 自动装箱和拆箱 自动装箱: Integeri=10; 相当于:Integeri=new Integer(10); 自动拆箱 Integeri=10; inta=i; 相当于:inta=i.intValue(); 正则表达式 就是一套规则,可以用于匹配字符串 boolean matches(String regex):判断当前字符串是否匹配正则表达式,如果匹配则返回true,否则返回false Pattern:正则表达式所在 代器,集合,增强for,数据结构(ArrayList, LinkedList) 集合的体系结构: 由于不同的数据结构(数据的组织,存储方式),所以Java为我们提供了不同的集合, 但是不同的集合他们的功能都是相似,所以我们不断的向上提取,将共性抽取出来,这就是集合体系结构形成的原因 Collection(接口) booleanadd(E e):添加元素 voidclear():清空集合 booleancontatins(Object o):判断集合中是否包含指定元素 booleanisEmpty():是否为空 booleanremove(Object O):删除元素 intsize():返回集合中的元素的个数 Object[]toArray():将集合转换成一个Object类型数组 Iteratoriterator():返回一个迭代器对象 迭代器 Iterator(接口) 可以用于遍历集合 Enext():返回下一个元素 ListIterator add:添加元素 remove:删除当前的next元素 foreach: 增强for循环,一般用于遍历集合或者数组 格式: for(元素的类型变量:集合或者数组对象){ 可以直接使用变量 } List: 有序的(存储和读取的顺序是一致的) 有整数索引 允许重复的 List的特有功能: voidadd(int index,E element):在指定索引位置添加指定元素 Eget(int index):根据索引返回元素 Eremove(int index):根据索引删除,并返回删除的内容 Eset(int index,E element):根据索引替换为指定元素,并返回被修改的元素 LinkedList 成员方法: voidaddFirst(E e):添加元素到索引为0的位置 voidaddLast(E e):添加元素到size()-1的位置 EgetFirst():获取索引为0的元素 EgetLast():获取索引为size()-1的元素 E removeFirst():删除索引为0的元素并返回 EremoveLast():删除索引为size()-1的元素并返回 |