面试
Gashina
这个作者很懒,什么都没留下…
展开
-
关于Map线程安全的几种实现方案
如果使Map线程安全,有四种方法:1.使用synchronized关键字;synchronized(anObject){value = map.get(key);}2.使用JDK提供的锁,java.util.concurrent.locks.Lock;lock.lock();value = map.get(key);lock.unlock():3转载 2018-01-29 16:01:59 · 647 阅读 · 0 评论 -
浅谈hashmap
HashMap是基于哈希表的 Map 接口的实现。此实现提供所有可选的映射操作,并允许使用 null 值和 null 键。HashMap可以理解成是数组和链表的结合。当新建一个HashMap时,会自动创建一个长度为16的数组(Entry[] table);一个key-value对(即Entry)放入HashMap中时,首先通过hashCode()获得该key的hash码,通过hash码决定该E转载 2018-01-29 16:04:07 · 156 阅读 · 0 评论 -
面试题--HashMap底层的实现
首先我们来看看HashMap的底层源码/** * Constructs an empty HashMap with the default initial capacity * (16) and the default load factor (0.75). */ public HashMap() { this.loadFactor = DEFAULT_LOAD_F转载 2018-01-29 16:09:46 · 176 阅读 · 0 评论 -
面试题:“你能不能谈谈,java GC是在什么时候,对什么东西,做了什么事情?”
面试题目: 地球人都知道,Java有个东西叫垃圾收集器,它让创建的对象不需要像c/cpp那样delete、free掉,你能不能谈谈,GC是在什么时候,对什么东西,做了什么事情?一.回答:什么时候?1.系统空闲的时候。分析:这种回答大约占30%,遇到的话一般我就会准备转向别的话题,譬如算法、譬如SSH看看能否发掘一些他擅长的其他方面。2.系统自身决定,不可预测的时间/调用转载 2018-01-29 16:36:53 · 153 阅读 · 0 评论 -
数据库的优化-应付面试
在数据仓库项目中,由于数据规模庞大,提高数据的查询效率是永恒的主题,常见的优化手段有:1、 硬件优化,提高机器性能,增加硬件等;2、 优化查询语句,将限定性强的where条件放前,用exists代替in操作等;3、 优化索引,建立有效的索引并检查和修复缺少的统计信息等;4、 数据库系统文件优化,将数据文件、索引文件、日志文件放置在不同的磁盘上,提高并行度等除了以上方法外,还有一种很重要但易被大家忽...转载 2018-05-17 13:20:18 · 1855 阅读 · 0 评论 -
经典sql面试题(50道)
Student(S#,Sname,Sage,Ssex) 学生表Course(C#,Cname,T#) 课程表SC(S#,C#,score) 成绩表Teacher(T#,Tname) 教师表问题:1、查询“001”课程比“002”课程成绩高的所有学生的学号;select a.S# from (select s#,score from SC where C#='001') a,(select s#,s...转载 2018-05-21 13:39:57 · 7612 阅读 · 2 评论 -
Spring中IOC和AOP的详细解释
我们是在使用Spring框架的过程中,其实就是为了使用IOC,依赖注入,和AOP,面向切面编程,这两个是Spring的灵魂。主要用到的设计模式有工厂模式和代理模式。IOC就是典型的工厂模式,通过sessionfactory去注入实例。AOP就是典型的代理模式的体现。代理模式是常用的java设计模式,他的特征是代理类与委托类有同样的接口,代理类主要负责为委托类预处理消息、过滤消息、把消息转发给委托类...转载 2018-06-04 10:19:43 · 472 阅读 · 0 评论 -
J2EE--常见面试题总结 -- ( 一)
StringBuilder和StringBuffer的区别:String 字符串常量 不可变 使用字符串拼接时是不同的2个空间StringBuffer 字符串变量 可变 线程安全 字符串拼接直接在字符串后追加StringBuilder 字符串变量 可变 非线程安全 字符串拼接直接在字符串后追加1.StringBuilder执行效率高于Stri...转载 2018-07-27 15:07:02 · 399 阅读 · 0 评论