首页 > 图书中心 >图书详情

Java程序员成功面试秘籍

作者:[英] Noel Markham 著 郑思遥 译
定价:59.80
印次:1-1
ISBN:9787302390633
出版日期:2015.03.01
印刷日期:2015.03.11

成功赢得面试并收获你值得的Java编程工作 《Java程序员成功面试秘籍》是你参加热门Java职位面试的好帮手。面试专家和Java开发者Noel Markham联合Interview Zen网站从20 000多名参加真实IT公司面试的面试者中收集、编译了一些与Java相关的具有挑战性的题目和解答。这些珍 贵的资料可以帮助你展现对完整Java生态系统的认识,并避免面试中的常见错误,让你充满自信地参加面试,得到自己梦想的工作。 主要内容 ◆ 从真实的Java编程职位面试中遴选了200多道问题和解答 ◆ 为Java求职者准备了3套必备技能:面试流程技能、核心Java技能以及与Java组件和框架相关的技能 ◆ 提供了一个Scala语言(一种运行在JVM上的语言)的附录,帮助你给潜在雇主留下深刻印象 ◆ 在支持网站上可以下载书中所有的示例代码。此外还可以在Interview Zen网站上找到更多的支持和测试材料

more >

前 言 有人会认为面试很难对付,因为面试是一个一对一的考察技术能力的过程。 这本书是准备找工作的Java面试者的必备指南。本书提供了足够多的练习材料,让你有足够的信心面对可能会被问到的问题,因此可以帮助你克服Java编程面试过程中的恐惧和担忧。 本书介绍的技术 本书是基于Java SE 7编写的。如果你是一位有经验的Java开发者,但是还没有跟上Java 7的步伐,那么可以在本书中学习以下新的语言特性和API库。 钻石操作符 编译器会尽可能地推导出泛型实例的类型。因此,我们可以编写List<Integer> numbers = new ArrayList<>()这样的语句,而不用编写List<Integer> numbers = new ArrayList<Integer>()这样的语句。这样在使用集合时,特别是在集合嵌套集合时,可以大大减少样板化代码的量。 在switch语句中使用String 最初的Java switch语句只能处理数值类型。随着Java 5引入了枚举类型,在switch语句中还可以使用枚举类型。现在从Java 7开始,在switch语句中可以使用String对象。 新的文件I/O库 Java 7引入了一个新的I/O库,关注的是平台无关的非阻塞I/O。 此外,Java 7还引入了很多新特性,例如自动资源管理和二进制字面量的表示形式。本书全书使用Java 7。可以认为,面试官会使用最新的Java技术来进行考察,因此随着语言的新版本的发布,你也应该让自己的技能跟上时代的步伐。 有一些Java框架和库还没有完全兼容Java 7,因此在使用具体组件时请查阅最新的文档。 本书的组织结构 全书分为以下3个独立的部分。 第Ⅰ部分:面试流程概述 关于面试流程的章节包含两方面的内容:一方面是如何向面试官表现自己,另一方面是一些和Java无关但是可能会出现在技术面试中的一般性技术话题。 第1章:面试类型分析 该章介绍了雇主的招聘流程中的各个步骤,从电话面试到面对面的技术测试,再到和招聘经理的面谈。 第2章:撰写引人入胜的简历 简历及其附信是下一任雇主对你产生的第一印象。该章讨论了如何让你的简历脱颖而出,给出了语言相关的一些小建议和招聘者会关注的一些问题。 第3章:技术测试和面试基础知识 任何潜在的雇主都会考察你的技术能力,而且会采用尽可能高效的方式。该章讨论了各种不同类型的编程测试和技术测试,并讨论了如何准备这些类型的测试。 第4章:编写核心算法 计算机科学的核心概念是技术测试中经常会考察的内容,其中包含排序和搜索。该章给出了一些不同的搜索和排序算法,并讨论了每一种方法的优劣。 第5章:数据结构 在面试中,计算机科学核心概念的相关问题除了排序和搜索之外,常见的主题就是数据的高效存储和表达。第5章讨论了列表、树、映射和集合等数据结构,讨论了这些数据结构的表达和使用。 第6章:设计模式 该章涵盖了一些面向对象的设计模式,还展示了Java库中的类使用的一些模式。 第7章:常见面试算法的实现 该章给出了一些常见的面试题,并用Java实现了这些题目的解答。本章很多题目都来自于一个很流行的技术面试网站interviewzen.com。 第Ⅱ部分:核心Java 这一部分章节的内容是面试官认为有经验的Java开发候选人应该了解的内容。 第8章:Java基础 该章覆盖了Java的很多语言特性,有经验的Java开发者可以利用该章复习基础知识。 第9章:基于JUnit的测试 本书使用的一个核心思想是单元测试。该章介绍了JUnit,并讲解了如何通过JUnit验证假设和断言。 第10章:理解Java虚拟机 任何有能力的开发者都会对自己使用的平台有一定的理解,Java也不例外。该章介绍了JVM的一些特性,以及JVM和Java语言之间的交互。 第11章:并发 该章讨论了Java的线程模型及使用方法。该章还介绍了actor模型,它是并发编程采用的一种新方法。 第Ⅲ部分:组件和框架 这一部分讨论了一些使用Java的领域,从数据库到Web服务,从流行的框架(例如,Hibernate和Spring)到构建和发布企业级应用的工具。在面试某个具体职位时,面试官可能希望你具有这些章节所介绍的一些相关知识,而这些知识通常都会在工作描述中列出,也许你一开始就是因为看到了工作描述才去应聘这份工作。 第12章:Java应用程序和数据库的整合 很多大型Java应用程序都会包含数据库组件。该章介绍了数据库操作的标准语言SQL以及如何在Java中使用SQL。 第13章:创建Web应用程序 Java是创建通过HTTP提供数据服务的应用程序的一种常用语言。该章讨论了3个流行的框架:Tomcat、Jetty和Play。 第14章:HTTP和REST 该章讨论了HTTP的另一种用途:通过REST (Representational State Transfer)风格创建和使用Web服务。 第15章:序列化 序列化是传输结构化数据所采用的方法。该章涵盖了3种方法:Java自己的序列化机制以及分别使用XML和JSON的平台无关的方法。 第16章:Spring框架 Spring框架是一个比较流行的应用框架,很多雇主在自己的一些甚至全部应用中都使用了这个框架。该章讨论了Spring框架的一些组件,包括核心应用上下文、数据库集成以及集成测试。 第17章:使用Hibernate Hibernate是一个将关系数据库数据映射到Java对象的框架。该章介绍了Hibernate,以及如何通过Hibernate创建和操作对象。 第18章:有用的库 Java有很多有用且可重用的库。该章介绍了3个比较流行的库:Apache Commons、Guava和Joda Time。 第19章:利用构建工具进行开发 任何大型的Java应用程序,特别是涉及多位开发者的应用程序,其构建和打包过程都需要管理良好的流程。该章介绍了构建Java应用程序使用的两个最流行的工具:Maven和Ant。 第20章:Android开发 最后这一章介绍了Java语言的一种现代应用:在Android上开发移动应用程序。该章介绍了Android SDK的关键组件及其整合方式。 附录A:Scala简介 该附录介绍了Scala语言,这是一种在Java开发团队中越来越流行的语言,因为这种语言使用JVM作为平台。该附录介绍了Scala语言的一些基本知识、函数式编程的概念以及一些和不可变性相关的约定。 本书读者对象 本书面向的是有一些经验的Java开发者:这样的读者应该了解这门语言,而且使用过一段时间,但是对书中有些章节的内容不熟悉甚至完全不了解。如果你从来没有使用过Java,这本书也会有帮助,特别是第Ⅱ部分中的几章。你应该按顺序阅读这些内容,同时可以参考其他更深入的介绍性材料。 如果你处于面试官的位置,那么这本书也很有用,你可以通过本书找到一些在面试中问问题的灵感。 本书利用的工具 从http://www.oracle.com/technetwork/java/javase/downloads/index.html可以下载最新的Java JDK。大部分专业开发者会在集成开发环境(Integrated Development Environment,IDE)中编写Java代码。IntelliJ(免费社区版可以从http://www.jetbrains.com/idea/download/index. html下载)和Eclipse(可以从http://www.eclipse.org/downloads/下载)是两个最流行的IDE。有些面试官在面试过程中可能要求你使用计算机和IDE编写代码,因此你也应该熟悉这些IDE的基本操作。 下载示例源代码 本书中所有的示例源代码都可以从www.wiley.com/go/javaprogramminginterviews下载。下载、编辑和编译这些源代码对你非常有帮助,对于那些你不太熟悉的内容更是如此。另外,http://www.wrox.com和http://www.tupwk.com.cn/downpage也提供了源代码下载和技术支持。 小结 本书并不是获得Java开发者工作的捷径,而是帮助你找到下一份工作的指南。通过本书可以了解面试官在招聘过程中经常会提到的一些话题。 经验对于面试非常有帮助,不仅对于面试的内容本身有帮助,而且也有助于减轻面试本身的陌生感和压迫感。你必须不断地练习面试的技巧,随着参与开发的时间越来越多,你的技能也会不断提高。在面试过程中获得经验会比较困难。每一个面试官都会采用不同的面试方式,整个过程也不会完美。潜在的雇主除了考虑“这位候选人是否足够好”之外还要考虑很多变数,在通盘考虑之后才可能给出录用意向。预算的约束,团队的融合,甚至面试官本身的心情都会对面试造成影响。 如果被拒了,也不要太沮丧,尝试从中吸取一些经验,想一想在以后的面试中会碰到什么问题。 还要记住,面试是一个双向的过程:在面试时要询问关于职位的细节,还要了解未来的同事以及在办公室中的生活情况。如果感觉不对的话,不要害怕拒绝。 祝你在准备面试的过程中好运,也希望你能享受这个过程。祝愿本书能帮你找到理想的工作。

more >
扫描二维码
下载APP了解更多
图书分类全部图书
more >
  • 目 录

    第Ⅰ部分 面试流程概述

    第1章 面试类型分析 3

    1.1 电话面试流程 4

    1.2 技术测试 5

    1.3 应对面对面的现场面试 7

    1.4 最终的决定 8

    1.5 本章小结 8

    第2章 撰写引人入胜的简历 11

    2.1 如何撰写简历和求职信 11

    2.2 撰写求职信 14

    2.3 本章小结 14

    第3章 技术测试和面试基础知识 17

    3.1 书面技术测试 17

    3.2 上机测试 18

    3.3 面对面的技术面试 19

    3.4 本章小结 20

    第4章 编写核心算法 23

    4.1 关于大O符号 23

    4.2 列表排序 24

    4.3 列表搜索 32

    4.4 本章小结 34

    第5章 数据结构 35

    5.1 列表 35

    5.2 树 39

    5.3 映射 45

    5.4 集合 48

    5.5 本章小结 49

    第6章 设计模式 51

    6.1 考察示例模式 51

    6.2 常用模式 60

    6.3 本章小结 64

    第7章 常见面试算法的实现 67

    7.1 实现FizzBuzz 67

    7.2 生成斐波那契数列 69

    7.3 实现阶乘 73

    7.4 实现库的功能 74

    7.5 使用泛型 82

    7.6 本章小结 85

    第Ⅱ部分 核心Java

    第8章 Java基础 89

    8.1 原始类型 90

    8.2 使用对象 92

    8.3 Java数组 99

    8.4 String的使用 100

    8.5 理解泛型 103

    8.6 自动...

精彩书评more >

标题

评论

版权所有(C)2014 清华大学出版社有限公司 京ICP备05029640号 京公网安备11010802013248号

联系我们 | 网站地图 | 法律声明 | 友情链接 | 盗版举报 | 人才招聘