携程 后台开发工程师 一面
第一次发帖子,记录一下吧,懵逼了,只想起来这些。面试约1小时。
- Object下都有什么方法?
-
面向对象的特点?
-
如何实现多态?并以面向对象的思想设计一个猫吃鱼的例子(写代码)
-
如何避免线程死锁?
-
synchronized关键字加在静态方法和非静态方法上有何区别?
-
线程有哪些基本状态,状态切换图画出来
-
解释一下IO阻塞?
-
用过哪些集合?
-
ArrayList和LinkedList的区别?
-
HashMap的底层原理? 在key相同的情况下怎么处理?
-
HashMap线程安全吗?与ConcurrentHashMap的区别?分段锁在Java8后有什么变化?
-
TCP如何保证可靠传输?
-
TCP两次握手不行吗?
-
TCP断连呢?为什么需要4次挥手?
-
TCP建立连接后,服务端出现故障,怎么处理?
-
TCP流量控制、拥塞控制?
-
解释一下SQL注入
-
事务的特性是什么?
-
事务隔离级别有哪些?
-
MySQL存储引擎是什么?
-
关系型数据库与非关系型数据库的区别?非关系型数据库在什么场景下使用?
-
索引的优点是什么?什么场景下使用索引、什么场景下不使用?
-
B+树原理是什么?
-
算法题:n皇后