StringBuffer 和 StringBulider的区别
StringBuffer StringBuilder 都是可变的字符序列(修改的是对象本身)
StringBuffer StringBuilder 的方法 一般是没有返回值的
二者的区别主要是在运行速度和线程安全这两方面。
1、StringBuffer 与 StringBuilder 中的方法和功能完全是等价的
2、只是StringBuffer 中的方法大都采用了 synchronized 关键字进行修饰,因此是线程安全的,而 StringBuilder 没有这个修饰,可以被认为是线程不安全的。
3、在单线程程序下,StringBuilder效率更快,因为它不需要加锁,不具备多线程安全而StringBuffer则每次都需要判断锁,效率相对更低。
权限
测试权限修饰符
1.public (公开的)
2.protected(受保护的)
3.default(默认的 什么都不写)
4.private(私有的)
本类 同包类 同包子类 不同包类 不同包子类
public yes yes yes yes yes
protected yes yes yes no yes
default yes yes yes no no
private yes no no no no
Collection接口是集合类的根接口,Java中没有提供这个接口的直接的实现类。
但是却让其被继承产生了两个接口,就是Set和List。Set中不能包含重复的元素。
List是一个有序的集合,可以包含重复的元素,提供了按索引访问的方式。