年后的一周主要是准备并进行了第一次考核以及Java第二阶段的学习。
首先是基本API。
1.Object类型:
1.是所有java类的祖先(根基类)。
2.java中所有的类没有显示的继承其他类默认继承Object类,因为为了实现多态性(Object类就可以表示任何类型)。
3.toString()方法:输出对象时会自动调用对象中的toString(),如果对象中没有,则会调用Object类中的toString()。如果为了显示更简单,可以在子类中重写toString()方法,从而调用子类。
4.equals()方法:比较 用法 eg:s1.equals(s2)
2.String类型:
字符串不能被继承,被关键字final修饰,因String类是一个最终类。
常用api:1、字符串比较:equals,equalsIgnoreCase ( 忽略大小写做比较);2.替换replace 3.
字符串截取substring。
3.StringBuffer和Stringbuilder的区别:
stringbuffer和stringbuilder都不同于string,string当修改字符串时,是在内存中创建一个新的字符串,并把地址传给string 对象,因此比较浪费空间,而stringbuffer和stringbuilder是在初始时创建一个容器,当修改的时候会修改容器中的内容,而不是创建一个新的容器,所以如果有一个需要频繁改变的字符串的话,最好不要使用string。
执行速度:StringBuilder > StringBuffer,. StringBuilder:线程非安全的;StringBuffer:线程安全的。
3.Math类型:Math类包含用于执行基本数学运算的方法的数学工具类,如初等指数、对数、平方根和三角函数。
4.Date类型:位于java.util包中,是用来处理日期,时间的一个类。
5.Calendar类型:Calendar是日历类,在Date后出现,替换掉了许多Date的方法。该类将所有可能用到的时间信息封装为静态成员变量,方便获取。
正则表达式:正则表达式,又称规则表达式。是对字符串操作的一种逻辑公式,就是用事先定义好的一些特定字符、及这些特定字符的组合,组成一个“规则字符串”。正则表达式中"/“是表达式开始和结束的标记,”\"反斜杠是表示转义字符。
之后便学习了解查看jdk文档,然后是第二阶段的学习——泛型和集合,网络编程。
1.泛型作用:①类型安全②消除强制类型转换③潜在的性能收益④更好的代码复用性
2.List集合:List集合为列表类型,以线性方式存储对象。ArrayList集合:ArrayList支持可随需要而增长的动态数组。LinkedList:是基于链表结构实现的,所以查询速度慢,增删速度快,提供了特殊的方法,对头尾的元素操作(进行增删查)。但ArrayList和LinkedList线程不安全,在多线程中不建议使用。
3.Set集合:Set的常用实现类有HashSet,TreeSet。HashSet实现了Cloneable, Serializable两个接口。HashSet的底层是通过HashMap实现。TreeSet是一个有序的集合,它的作用是提供有序的Set集合。LinkedHashSet是一个哈希表和链表的结合,且是一个双向链表并且linkedHashSet是一个非线程安全的集合。
4.Iterator迭代器:Iterable接口是Java集合的顶级接口之一。Collection接口继承Iterable,所以Collection的所有子类也实现了Iterable接口。实现了这个接口可以获得增强for循环的操作,该接口只有一个方法:iterator。该方法的返回值是一个名为Iterator的接口,这个接口也被称为迭代器。
最后便是网络编程的了解。
网络编程三要素:①IP地址:InetAddress: 网络中设备的标识,不易记忆,可用主机名;②端口号:用于标识进程的逻辑地址,不同进程的标识 ;③传输协议:通讯的规则常见协议:TCP,UDP
以上便是本周学习总结。