1:  Java7 以后的 NIO.

2:  泛型要掌握,这里重点强调一点,泛型类之间不存在继承关系,所有的泛型对象在编译后都会去泛型化,都是同一个 class 对象,例如 ArrayList<Objcet>不是 ArrayList<String>的父类,在内存中对应同一个 class。还有在 Java7以后,支持新的写法,例如,List<String> names = new ArrayList<>()。

3:  知道枚举对象,枚举类型可以用在 switch 上了,再是写单例模式的时候,可以考虑使用枚举实现。

4: 一定要掌握JDBC,否则程序就没法玩了,闭着眼睛就能写 CRUD,知道如何调用数据库里的存储过程。一定注意事务的问题。事务的四个特性,一荣俱荣,一损俱损。期间某一个对数据库操作出现问题,数据一定要 rollback。

5: Java 的线程问题,我觉得是 Java 语言里面最难的部分,因为它在运行中不确定,还有导致死锁等各种问题,还好,个人感觉,在实际工作中用得不是很多,但是面试时重点考察的地方。简单的说要知道 Thread 和 Runnable 的区别,线程的状态和生命周期,什么是并行,什么是并发。知道wait,sleep,join 等方法的用法。最重要的是 synchronized 的线程同步。更高级点的 Callable 和 Future接口,Lock 和 Condition 的使用。如果涉及到多线程开发的话,优先使用 Executors 线程池对线程进行管理。

6: 再是比较高级点的技术就是反射。反射开始看起来比较抽象和难以理解。个人理解,每个 class 其实也是一个对象,可以用实例的 getClass(),或类名.class 方式来获取,Java 可以通过反射的这些 API 取得一个动态的 class 里面所有的属性和方法,并能修改其行为。这块也要知道一个类的加载过程,类加载器是什么东西,有几种类型。反射可以用来实现动态代理。在以后的 spring 等框架中,大量使用了反射的技术。

7: 要掌握一些常用的数据查找和排序算法,设计模式,在面试和笔试会用到。

8:  Java8/9/10

最新文章

  1. c/c++多线程模拟系统资源分配(并通过银行家算法避免死锁产生)
  2. C#单链表
  3. oracle查询出的字段加引号
  4. CEF3可行性
  5. python查找并删除相同文件-UNIQ File-script版本
  6. 如何写一个漂亮的Liferay Theme 6.2
  7. iOS开发:Swift多线程GCD的使用
  8. Oracle Analyze 命令 详解
  9. java常用string inputStream转换
  10. hdu2444The Accomodation of Students
  11. PHP - 目录与文件
  12. UVa 11988 - Broken Keyboard (a.k.a. Beiju Text) 题解
  13. .Net 文本框实现内容提示(仿Google、Baidu)
  14. VS2010暂停编译界面
  15. js之DOM对象三
  16. LOJ #10132. 「一本通 4.4 例 3」异象石
  17. Python基础-python数据类型之列表(四)
  18. MAC EI Capitan上更新系统自带SVN版本号(关闭SIP方能sudo rm)
  19. Python使用lxml模块和Requests模块抓取HTML页面的教程
  20. Spring 4 中重定向RedirectAttributes的使用

热门文章

  1. 12.Django数据库操作(执行原生SQL)
  2. ABAP table control例子
  3. SAP basis 二
  4. 【logback】认识logback
  5. linux shell 中数组使用方法介绍
  6. 改善程序与设计的55个具体做法 day2
  7. simple -- abstract
  8. ELK日志分析系统-Logstack
  9. Data Structure Binary Tree: Check if a given Binary Tree is SumTree
  10. runtime-分类为什么不生成setter和getter