Java 面试问题系列十(最佳实践)

1.Java 中使用 Collections 的最佳实践

a)使用正确的集合类,例如,如果不需要同步列表,使用 ArrayList 而不是 Vector。

b)优先使用并发集合,而不是对集合进行同步。并发集合提供更好的可扩展性。

c)使用接口代表和访问集合,如使用List存储 ArrayList,使用 Map 存储 HashMap 等等。

d)使用迭代器来循环集合。

e)使用集合的时候使用泛型。

2. Java 中使用线程的最佳实践。

a)对线程命名

b)将线程和任务分离,使用线程池执行器来执行 Runnable 或 Callable。

c)使用线程池

3. JDBC 最佳实践

a)使用批量的操作来插入和更新数据

b)使用 PreparedStatement 来避免 SQL 异常,并提高性能。

c)使用数据库连接池

d)通过列名来获取结果集,不要使用列的下标来获取。

4. IO 的最佳实践

a)使用有缓冲区的 IO 类,而不要单独读取字节或字符。

b)使用 NIO 和 NIO2

c)在 finally 块中关闭流,或者使用 try-with-resource 语句。

d)使用内存映射文件获取更快的 IO。

5.编写多线程最佳实践

a)给线程命名,这样可以帮助调试。

b)最小化同步的范围,而不是将整个方法同步,只对关键部分做同步。

c)如果可以,更偏向于使用 volatile 而不是 synchronized。

d)使用更高层次的并发工具,而不是使用 wait() 和 notify() 来实现线程间通信,如 BlockingQueue,CountDownLatch 及 Semeaphore。

e)优先使用并发集合,而不是对集合进行同步。并发集合提供更好的可扩展性。

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 俗话说:人在江湖混,哪有不挨刀!这是打我入大学以来一直就秉持着的真理,因为大学也算半个江湖,既然已经开始沾边江湖了...
    素人之舟阅读 297评论 0 0
  • 你上市场买过菜吗? 选择的时候决定的因素是什么? 你喜欢什么菜? 我喜欢白菜、菠菜、豆芽、土豆、南瓜、地瓜…… 你...
    心怡曼陀罗心理工作室阅读 809评论 0 1
  • 我们小时候玩儿泥巴是很自然的事情,有时候不需要水来调和土,单单是普通的土块都可以玩儿半天。玩儿泥巴也不是什么技术活...
    桃球蛋阅读 682评论 0 0