A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

本帖最后由 魏北北 于 2018-7-26 15:01 编辑

就业班2天知识总结

一.Object(所有类的根类)

1.成员方法

String toString() :返回该对象的字符串表示

boolean equals(Object obj) :指示其他某个对象是否与此对象"相等"

2.Object类的特点:

是所有类的父类, 任何一个类都直接或间接地继承自Object类, 并可以使用Object类中定义的方法 一个类如果没有指定继承某个父类, 则默认继承Object类

二.System类

类字段:static修饰的成员变量
static InputStream  in;"标准"输入流
static OutputStream out: "标准"输出流
普通方法:
static void arraycopy(Object src, int srcPos, Object dest, int destPos, int length) :
从src源数组的srcPos索引开始,复制length个元素,从destPost位置开始将这些元素放至到dest数组中
static long currentTimeMillis(): 以毫秒值返回当前系统时间(1970-1-1 0:0:0至今过了多少毫秒)
1000毫秒=1秒;
static void exit(int status): 终止当前正在运行的 Java 虚拟机
三.Date类
Date: 表示特定的瞬间,精确到毫秒,他可以通过方法来设定自己所表示的时间,可以表示任意的时间
Date类的构造方法
Date() :创建的是一个表示当前系统时间的Date对象;
Date(long date) :根据"指定时间"创建Date对象;
Date常用方法
Date的常用用方法
毫秒值 --- Date
1>void setTime(long time) 设置此 Date 对象,以表示 1970 年 1 月 1 日 00:00:00以后 time 毫秒的时间点。 和Date(long date)一样;
2>Date --- 毫秒值  long getTime() 返回自 1970 年 1 月 1 日 00:00:00 以来此 Date 对象表示的毫秒数。
DateFormat类(抽象类) & SimpleDateFormat(实现类)
   DateFormat 是日期/时间格式化子类的抽象类,它以与语言无关的方式格式化并解析日期或时间。日期/时间格式化子类(如 SimpleDateFormat类)允许进行格式化(也就是日期 -> 文本)、解析(文本-> 日期)和标准化。
SimpleDateFormat:
构造方法:
SimpleDateFormat() :使用默认的模式进行对象的构建
SimpleDateFormat(String pattern) :使用的指定的模式进行对象的构建
使用指定的模式进行对象的构建 "yyyy年MM月dd日 HH:mm: ss" 4个小姨2个大美眉和2个小弟弟
y: 年       M: 月        d: 日        H: 时 (24小时制)       m: 分       s: 秒  
E: 星期        S: 毫秒              D: 年中的天        K: 小时(12小时制)               
格式化:Date --- String
          String format(Date date)将Data对象日期转换成一定格式的字符串;
解析:String --- Date
    Date parse(String source)将字符串转换成Data对象,解析的字符串,模式必须和构建对象的模式一样
四.Calendar类
Calendar是日历类,在Date后出现,替换掉了许多Date的方法。该类将所有可能用到的时间信息封装为静态成员变量,方便获取。
Calendar为抽象类,由于语言敏感性,Calendar类在创建对象时并非直接创建,而是通过静态方法创建,将语言敏感内容处理好,再返回子类对象,
Calendar rightNow = Calendar.getInstance();创建Calendar对象
一部分日历字段
static int DAY_OF_MONTH 指示一个月中的某天。
static int DAY_OF_WEEK 指示一个星期中的某天。
static int DAY_OF_WEEK_IN_MONTH 指示当前月中的第几个星期。
static int DAY_OF_YEAR 指示当前年中的天数。
static int HOUR_OF_DAY  指示一天中的小时。
static int MONTH  月份是从0开始的
static int YEAR 指示年份
普通方法:
abstract  void add(int field, int amount) 根据日历的规则,为给定的日历字段添加或减去指定的时间量。
int get(int field) 返回给定日历字段的值
void set(int field, int value) 将给定的日历字段设置为给定值。
Date getTime() 返回一个表示此 Calendar 时间值(从历元至现在的毫秒偏移量)的 Date 对象。
static Calendar getInstance() 使用默认时区和语言环境获得一个日历。
五.包装类
基本数据类型对象包装类:java将基本数据类型值封装成了对象Integer
1.基本类型转为String: 拼接空字符串
        "" + 34
        true + ""
2.String转成int类型
String --- in方式    1:int intValue()      方式2: static int parseInt(String s)
String转基本类型: 利用包装类的静态方法
    static?byte?parseByte(String?s): 将字符串参数转换为对应的byte基本类型
    static?short?parseShort(String?s): 将字符串参数转换为对应的short基本类型
    static?int?parseInt(String?s): 将字符串参数转换为对应的int基本类型
    static?long?parseLong(String?s): 将字符串参数转换为对应的long基本类型
    static?float?parseFloat(String?s): 将字符串参数转换为对应的float基本类型
    static?double?parseDouble(String?s): 将字符串参数转换为对应的double基本类型
    static?boolean?parseBoolean(String?s): 将字符串参数转换为对应的boolean基本类型
地址值:类的全路径+@+十六进制哈希值
native修饰符,本地C++写的 Class  getClass()获取字节码对象
Objects类 Objects.equals(Object o1,Object o2)判断引用数据类型的属性是否相等.
六.单列集合
1. Collenction<E>:集合的父类接口,
1.1Collection 层次结构中的根接口,Collection 表示一组对象,这些对象也称为 collection 的元素。 一些 collection 允许有重复的元素,而另一些则不允许。一些 collection 是有序的,而另一些则是无序的。
1.2 常用方法
1.21添加功能:
boolean add(E e)
1.22删除功能
boolean remove(Object o) 从此 collection 中移除指定元素的单个实例,如果存在的话。      
void clear() 移除此 collection 中的所有元素
1.23获取功能
int size() 返回此 collection 中的元素数.
1.24判断功能
boolean isEmpty() 如果此 collection 不包含元素,则返回 true。
boolean contains(Object o) 如果此 collection 包含指定的元素,则返回 true.
1.25特殊功能(获取一个迭代器对象)
Iterator<E> iterator() 返回在此 collection 的元素上进行迭代的迭代器。用于遍历循环
七.增强for, 普通for, 迭代器的区别:
        增强for:
                优点: 获取元素很方便, 格式简单
                缺点: 没有普通for中的索引, 没有迭代器对象可以进行元素的增删
                应用场景: 适用于遍历获取数组和集合元素的场景
        普通for:
                优点: 有索引可以使用, 某些方式可以在遍历过程中增删元素
                缺点: 格式繁琐
                应用场景: 需要用到索引的场景
        迭代器:
                优点: 可以使用迭代器对象的方法操作元素
                缺点: 格式繁琐
                应用场景: 需要在迭代过程中增删元素的场景
八.泛型
1.泛型: Generic. JDK 5 增加. 是一种未知的数据类型,型可以看作是一个变量, 用来接收数据类型
2.不使用泛型的问题:
2.1 集合实际存储的是 Object 类型, 存入的元素无论是什么类型, 都会被提升为 Object, 取出来的也是 Object, 要想调用元素特有方法, 就要向下转型, 有可能发生类型转换异常 ClassCastException
2.2 泛型的好处:
1>. 避免了类型转换的麻烦
2> 将运行时的类型转换异常, 转移到了编译时期 (有利于程序员提前发现问题)
3.定义和使用含泛型的类
3.1 格式:修饰符 class 类名<代表泛型的名字> { // 泛型的变量一般用一个大写字母表示, 但也可以是多个字母 }
3.2 泛型的定义和使用 泛型在定义时, 不能是具体的类型, 只是一个变量名 泛型在创建对象的时候 必须是具体的数据类型
4.定义含有泛型的方法与使用
4.1 带有泛型的方法定义格式
修饰符 <代表泛型的名字> 返回值类型 方法名(参数){ }
4.2 方法中定义泛型后, 返回值类型和参数类型都可以使用泛型
4.3 方法泛型的使用: 在调用方法时确定泛型的具体类型
5.定义与使用含有泛型的接口
5.1 带有泛型的类定义格式         修饰符 interface接口名<代表泛型的变量> { }
5.2 实现类实现了泛型接口后可以有2种选择:
1> 定义实现类时就确定泛型的具体类型
2>定义实现类时仍然沿用泛型, 直到创建该类对象时才确定泛型的具体类型
6.泛型通配符
6.1 泛型通配符: 不知道使用什么类型来接收时, 此时可以使用 来表示未知通配符
6.2 使用方式: 不能创建对象使用 只能作为方法参数使用. (减少方法重载)
6.3 泛型的上限: 格式: 类型名称 对象名称 示例: List<? extends Number> list 作用: 只能接收该类型及其子类 (Number及其子类的泛型)
6.4 泛型的下限: 格式: 类型名称 对象名称 示例: List<? super Number> list 作用: 只能接收该类型及其父类型 (Number及其父类的泛型)





0 个回复

您需要登录后才可以回帖 登录 | 加入黑马