关于hashmap对象:
在HashMap的构造函数有以下三种:
- HashMap():构建一个初始容量为 16,负载因子默认为 0.75 的 HashMap。
- HashMap(int initialCapacity):构建一个初始容量为 initialCapacity,负载因子为 0.75 的 HashMap。
- HashMap(int initialCapacity, float loadFactor):以指定初始容量、指定的负载因子创建一个 HashMap。
而其中的负载因子loadFactor的理解为:HashMap中的数据量/HashMap的总容量(initialCapacity),当loadFactor达到指定值或者0.75时候,HashMap的总容量自动扩展一倍,以此类推。
当加载因子在0.75时,均衡效率最高,加载因子大了会影响效率,低了浪费空间,初时空间大小为16.
包名是域名反写,因为域名具有唯一性,所以域名反写加项目名肯定不会出错。
比如如果是网易的项目就可以写成:com.netease.工程名等
finally块中的代码什么情况下不会执行
在trycatch中加入一个system.exit(1)
cookie session区别
1,session 在服务器端,cookie 在客户端(浏览器)
2,session 默认被存在在服务器的一个文件里(不是内存)
3,session 的运行依赖 session id,而 session id 是存在 cookie 中的,也就是说,如果浏览器禁用了 cookie ,同时 session 也会失效(但是可以通过其它方式实现,比如在 url 中传递 session_id)
4,session 可以放在 文件、数据库、或内存中都可以。
5,用户验证这种场合一般会用 session
因此,维持一个会话的核心就是客户端的唯一标识,即 session id。
可以实现多态性的方法叫动态绑定。
Stringbuffer与Stringbuilder的区别:
stringbuffer速度慢,但是线程安全,出现的早,stringbuilder速度快,但是县城不安全,出现的晚。
成员变量 才有可能被多个 线程访问到,才会线程不安全。局部变量不用担心,用速度快的 StringBuilder
buffer线程安全,慢,builder局部变量用,快。
垃圾回收机制是怎么运行的
使用索引题提高效率,是因为创建索引的时候,就是相当于把数据排序了,自然效率高了。
thread sleep不释放锁 wait释放锁
final static 命名的变量名大写
final修饰的方法要求效率高,短小,final方法编译器会全部置入调用
static只会初始化一次