搜罗的面试题
转 http://makaidong.com/IUbanana/420_1988701.html
充实下自己匮乏的基础吧。
- JVM内存模型(五大数据区域、堆栈、标记压缩/标记清除,年轻/老年/永久)
- JVM堆栈静态区分别存储的内容
- JVM的类加载机制(ClassLoader),双亲委派、破坏双亲委派机制
- 垃圾回收 (GC,如何判断一个对象不可达)
- 刚刚说的GC Root,有哪些对象可以当做GC Root呢?
- JVM可视化工具
2.集合框架
3.IO
IO哪个类可以Byte转String(InputSteamReader/OutputSteamWriter)
IO模型
NIO和BIO的区别
如何输出文件夹下的所有文件
4.关键字
final finalize finally
throws throw 怎么用?
static关键字的作用
abstract 关键字的作用,什么时候用
子类中如何调用父类的构造器,如果不用super关键字呢?有其他的方式吗?(this.(参数表)----- 本类)
synchronize关键字的使用
5.数据结构(hashmap、二叉树、TreeMap )
hash一致性的原理
找了一篇好文章
二叉树的遍历
二叉树的前序遍历,说下怎么实现,不用递归实现呢? 还有其他的方式吗?它们的区别
索引实现原理B+树(重要),为什么就能实现查询效率提高 等(都喜欢问b+树的特点)
6.数据库(MySQL)
过什么数据库,MongoDB用过不,此处回答学习分布式数据库时候用到过,问和mysql的区别(很简单,关系型和非关系型,一个是表的形式,一个是json形式存储)。
mysql数据库连接池的驱动参数
数据库连接池如何防止失效
事务acid,mysql怎么实现特性的(acid),事务隔离级别(四条),怎么实现的,可重复读和不可重复读的区别,脏读和幻读什么意思。
事务级别的序列化怎么实现的,有排它锁
mysql的索引(又是B+树)
7.框架问题(SpringMVC、设计模式、Spring AOP IOC、Mybatis)
SpringMVC工作原理
MyBatis 的使用,多个查询能否用一个连接
Spring的加载流程,Spring的源码中Bean的构造的流程
spring 特性 ,IOC AOP解释
介绍一下springmvc,随便说,spring mvc工作流程
mybatis的#和$号区别
AOP的思想,Spring注入的方式
Redis的一致性哈希算法
设计模式知道哪些?JDK或其它框架中有哪些设计模式?代理模式和包装模式
8.JavaWeb(JSP、Servlet、Session、HTTP、Filter)
Filter什么情况用到了
服务器端Session的保存
各种Web认证
9.计算机网络
三次握手和四次挥手
tcp滑动窗口 tcp状态码
SOAP协议、 HTTP的某个协议
http的数据包格式
tcp包含ip么
tcp的数据包格式
http状态码:200,202,301,302,304,404,500等
10.操作系统
线程几种状态
创建线程的4中方式
sleep() 和wait() 的区别
多线程框架讲一讲
多线程的好处和会遇到的问
如果两个线程都使用一个ByteBuf 怎么保证它的安全,具体说一下代码实现
多线程安全、线程join、线程池(newFixedThreadPool有几种)、CountDownLatch、信号量
三个线程的实现方式,线程中的同步
并发、并发中的threadlocal介绍、原理
讲一讲锁,volatile、synchronized、Lock
锁机制以及几种锁的原理以及区别,这个大家把锁相关问题和原理看一看就行,记得一定要理解基本原理
synchronized和lock的区别,你用过哪些锁。
有没有用到过Linux的底层一点命令,查看堆栈之类的
linux权限控制
linux的显示文件夹大小 ls -al
linux的查看端口状态 natstat加参数
linux的查看进程的启动时间 linux ps
日期时间戳、SimpleDateFormat线程安全问题、ThreadLocal
11. 算法(排序)
介绍快速排序
快排
堆排,如果从若干数中找最大N个数用最大堆还是最小堆?
二分查找
写一个全排
12. 项目
你项目中用到哪些设计模式。
做过的项目
开发中遇到的问题
13. 开放式问题
最后有什么问题想问(你们这个职位注重啥)
评价自己优缺点,业余爱好,最近在看什么书
说一下数据结构,有一个很长的链表,找出倒数第k个元素。不用两个指针呢?他们之前有什么区别?面试官更想听你说的第二种实现。
前台中有两个输入框a和b,在a输入框输入数据并且点击一按钮后b输入框响应显示a的数据,然后点击一个按钮后,将数据提交到后台,后台处理后返回前台,具体的逻辑过程
JIT(没反应过来)、进制转
7、Long、AtomicLong、LongAdder(JDK 8)以及JDK 8新特性
8、正则表达式:电话、邮箱,正则表达式解析。Linux shell查找指定线程、export用法
讲讲思路:一个1G文件里面都是字符串,每一行只有一个字符串,字符串最大16个字节,实现不超过1M空间下找出重复次数最多的前100个字符串
两个系统之间怎么通讯?