Java面试的重要知识点
-
java基础:Object类的所有方法:getClass hashCode equals clone toString notify notifyAll wait finalize;八种基本数据类型&取值范围;自动拆装箱&包装类型的缓存机制;ThreadLocal 理解String&不可变性 StringBuffer StringBuilder源码;ArrayList LinkedList HashMap(重点,可以花一天时间彻底掌握) LinkedHashMap TreeMap HashSet LinkedHashSet TreeSet源码;Java8:理解函数式编程 流式操作 CompletableFuture。 并发编程:必考,高并发的解决必要手段,对于juc以及线程模型的演进过程的掌握非常重要;理解并发与并行 线程池的原理:理解每个参数;Thread Runnable Callable;AQS(重要:常常会配合synchronized来说) Condition;Lock:ReentrantLock ReentrantReadWriteLock;Semaphore CountDownLatch CyclicBarrier;各种Atomic;ConcurrentHashMap;BlockingQueue;CopyOnWriteArrayList;Executors。 线程的状态转换:wait sleep notify notifyAll join park;停止线程的方法。线程模型:理解BIO、NIO(重点)、AIO、了解netty;并发包就那些东西,掌握AQS之后其他的很快就打通了。 jvm:主要熟知《深入理解java虚拟机》这本书。 设计模式:创建型:单例模式、抽象工厂模式、建造者模式、工厂模式、原型模式。结构型模式:适配器模式、桥接模式、装饰模式、组合模式、外观模式、享元模式、代理模式。行为型模式:模版方法模式、命令模式、迭代器模式、观察者模式、中介者模式、备忘录模式、解释器模式(Interpreter模式)、状态模式、策略模式、职责链模式(责任链模式)、访问者模式。 mysql:常用sql以及内置函数;hash索引;b+树的索引;聚集索引&非聚集索引;回表;联合索引:最左前缀&覆盖索引&索引下沉 事务&隔离级别&实现原理:readview undolog redolog mvcc;锁的使用&锁算法&行锁&表锁&乐观锁&悲观锁;连接查询的原理(算法);binlog&使用场景;分库分表:垂直&水平。 redis:《redis的设计与实现》看完这本书就行了,深入浅出,很快就可以看完和掌握,直接搞定redis 熟练五种类型对象&适用场景:字符串 列表 哈希 集合 有序集合了解底层数据结构:SDS 链表 字典 跳跃表 整数集合 压缩列表,web。 zookeeper:理解使用:文件系统+监听器;了解选举算法&分布式锁的实现;mq;算法&数据结构;常刷leetcode。栈、队列、链表、数组、哈希表、树、堆、图快排&二分&分治&递归&滑动窗口/双指针。
西南地区IT社群(QQ)
- 云南
- 【昆明网页设计交流吧】243627302
- 【昆明nodejs交流吧】 243626749
- 【VUE】838405306
- 【云南程序员总群】343606807
- 【昆明UI设计】104031254
- 【云南软件外包】15547313
- 贵州
- 【PHP/java源码/站长交流群】55692114
- 四川
- 【成都Java/JavaWeb交流】86669225
- 【vaScript+PHP+MySql】116270060
- 【UI设计/设计交流学习群】135794928
- 重庆
- 【诺基亚 JAVA游戏博物馆】 559479780
- 【PHP,Java,Python,C++接单】 442103442
- 西藏