全部分类

Java程序员面试宝典
(图片仅供参考)

查看付款方式  了解购物流程

Java程序员面试宝典

编    号: 147565
著 作 者: 欧立奇等编著
出 版 社: 电子工业出版社
书    号: 9787121045523
出版日期: 2007-8-1
市 场 价: ¥46 元
书 店 价: ¥43.7 元
立即节省: ¥2.3 元
人    气: 
Java程序员面试宝典   Java程序员面试宝典
咨询电话:029-86698115
到款传真:029-82086768



其他支付方式

内容简介
本书是程序员面试宝典系列中的一册,也是上一本《程序员面试宝典》的姊妹书。本书对程序设计面试中Java常见的题型和常用解答技巧进行了介绍,它不仅能帮助求职者快速复习相关知识点,也对现代职业人如何有效求职、面试考官如何关注求职者动态等做了详细解说。
本书通过详解各大知名公司技术类(开发、测试、系统管理)面试中的常见Java试题,深入浅出地对其解答思路进行了分析和指导。希望能把在技术面试中取得的宝贵经验毫无保留地传授给读者,以便使求职者对程序设计面试中的常见题型应付自如。通过对本书的学习,你会发现和完善有关试题的最佳解决方案,以应对各种局面。
本书适合(但不限于)将要找工作的程序员和高校计算机类应届毕业生,以及其他计算机爱好者。
第1部分 求职过程
古人云:凡事预则立,不预则废。机会都是垂青有准备的人的。为了得到一份满意的工作,大家一定要对整个求职过程有清醒的了解。把能够预见的、必须做的事情早一些做完,这样在大规模招聘开始的时候就可以专心地为面试做准备。
第1章 应聘求职 3
每年的二三月份,都是应届生求职、在职人员跳槽的高峰期。对于即将成为程序员的应届毕业生们,在求职过程中怎样确定目标公司和目标职位;对于已经是程序员的跳槽大军,是按照技术路线发展自己的职业生涯,还是走向管理岗位继续自己的职业道路,或者是改变自己的发展轨迹;大家在求职过程中要注意哪些细节?这些都是大家所关心的话题。
1.1 应聘渠道 3
1.2 应聘流程 4
第2章 简历书写 5
据统计,80%的简历都是不合格的。不少人事管理者抱怨收到的许多简历在格式上很糟糕。简历应该如何做到在格式上简洁明了,重点突出?求职信应该如何有足够的内容推销自己?如何控制长度,言简意赅?相信读了本章你会对简历的撰写有一个新的认识。
2.1 简历注意事项 5
2.2 简历模板 8
第3章 3种考试 13
笔试,电话面试,面试,是顺利求职的3个过程。三关全过才能顺利签约,只要有一关没能通过,就会被“刷”掉。
3.1 笔试 13
3.2 电话面试 15
3.3 面试 16
第4章 职业生涯发展规划 19
在一般情况下,我们工作一年之后,对自己的喜好及擅长都有了更加深刻的了解,这时会有较为明确的职业发展规划。
4.1 缺乏工作经验的应届毕业生 19
4.2 更换工作的程序员们 21
第5章 3个求职技巧 23
笔者作为一个专业的技术人员,一直不相信面试有什么真正的技巧可言。在求职面试中主要还是以实力为主,用能力说话。至于求职技巧,我觉得是一些待人接物的基本常识而已,你的家教,你的品行,你处理问题和对待朋友的态度,你的情操和品德,这些都是无法掩饰的。如果真的有什么技巧培养,那在幼儿园的时候就已经形成了。
5.1 应届生面试技巧 23
5.2 主考者的观点 25
5.3 谈话的技巧 26
第2部分 Java程序设计
本部分主要以Java设计语言为基础,通过大量实际例子分析各大公司Java面试题目,从技术上分析面试题的内涵。许多面试题看似简单,却需要深厚的基本功才能给出完美的解答。
第6章 Java程序设计基本概念 31
对于一个求职者或者应届毕业生,公司除了对项目经验有所问询之外,最好的考量办法就是检查基本功,包括编程风格,以及对赋值语句、递增语句、类型转换、数据交换等程序设计基本概念的理解。当然,在考试之前最好对自己所掌握的程序概念知识有所复习,尤其是对各种细致的考点要加以重视。
6.1 Java配置 31
6.2 i++ 33
6.3 类型转换 37
6.4 程序结构 38
6.5 其他相关问题 41
第7章 异常与反射 43
可以说,实现了反射机制的系统都具有开放性,但具有开放性的系统并不一定采用了反射机制,开放性是反射系统的必要条件。在Java类反射的主要方法中,获得字段信息的class反射调用不同于那些用于接入构造函数的调用,在参数类型数组中使用了字段名。反射让我们可以于运行时加载、探知、使用编译期间完全未知的classes。换句话说,Java程序可以加载一个运行时才得知名称的class,获悉其完整构造(但不包括methods定义),并生成其对象实例,或对其fields设值,或唤起其methods1。
7.1 final定义 43
7.2 异常处理 46
7.3 Reflection定义 47
第8章 传递与引用 53
Java语言明确说明取消了指针,因为指针往往是在带来方便的同时导致代码不安全的根源,而且还会使程序变得非常复杂和难以理解,滥用指针写成的代码不亚于使用早已臭名昭著的GOTO语句。Java放弃指针的概念绝对是极其明智的。但这只是在Java语言中没有明确的指针定义,实质上每一个new语句返回的都是一个指针的引用,只不过在大多数时候Java中不用关心如何操作这个“指针”,更不用像在操作C++的指针那样胆战心惊。唯一要多多关心的是在给函数传递对象的时候。
8.1 传值基本问题 53
8.2 静态变量与私有变量 58
8.3 输入/输出流 60
8.4 序列化 67
第9章 循环、条件、概率 71
递归过程的执行总是一个过程体未执行完,就带着本次执行的结果又进入另一轮过程体的执行……如此反复,不断深入,直到某次过程的执行遇到终止递归调用的条件成立时,则不再深入,而执行本次的过程体余下的部分,然后又返回到上一次调用的过程体中,执行其余下的部分……如此反复,直到回到起始位置上,才最终结束整个递归过程的执行,得到相应的执行结果。递归过程的程序设计的核心就是参照这种执行流程,设计出一种适合“逐步深入,而后又逐步返回”的递归调用模型,以解决实际面试例题。
9.1 典型递归问题 71
9.2 Switch 76
9.3 条件语言 78
9.4 Java排序 80
9.5 随机数 89
第10章 Java内存管理 93
内存管理太重要了,花多少口舌介绍它都不过分。我曾经见到这样一句话:“C++程序员觉得内存管理太重要了,所以一定要自己进行管理;Java/C#程序员觉得内存管理太重要了,所以一定不能自己去管理。”从某种意义上说,两者都是对的。面试中内存管理涉及堆、栈、哈希表、内存泄漏等诸方面。
10.1 堆栈 93
10.2 垃圾收集 99
10.3 clone 107
10.4 Java线程 109
第11章 面向对象 111
面向对象其实是现实世界模型的自然延伸。现实世界中任何实体都可以看做是对象。对象之间通过消息相互作用。另外,现实世界中任何实体都可归属于某类事物,任何对象都是某一类事物的实例。如果说传统的过程式编程语言是以过程为中心、以算法为驱动的话,面向对象的编程语言则是以对象为中心,以消息为驱动。用公式表示,过程式编程语言为:程序=算法+数据;面向对象编程语言为:程序=对象+消息。
11.1 面向对象的基本概念 112
11.2 类和对象 115
11.3 嵌套类 118
11.4 构造函数和析构函数 119
11.5 复制构造函数和赋值函数 120
11.6 多态的概念 121
第12章 继承与接口 129
接口在实际语言,如Delphi、Java、C++等中,都有广义和狭义之分,这很重要,以前就是因为没明白接口的广义和狭义之分,始终没能真正理解接口的真正意义。广义接口从一般意义上说,凡是一个类提供给外部使用的部分都可以被称为接口。但是在引入继承和抽象类之前,这个广义接口并没有太大意义。广义接口的真正意义是在类的继承中体现多态的功能,这种接口又被称为抽象类接口。
12.1 基础知识 129
12.2 Super 133
12.3 this 138
12.4 不能继承的情况 142
12.5 抽象类与接口 144
12.6 设计有效的继承 154
第13章 JavaScript 161
越来越发现很多灵巧的功能都是由JS实现的。这是因为Web模式现在还是Pull为主,要实现灵巧的功能,客户端必须有一定的主动性,简单的页面刷新是不够的,越来越多的应用要求互动刷新或者实时刷新。在Push技术还未成主流的情况下,JS的价值就体现出来了。
13.1 网页脚本 161
13.2 APPLET 162
第14章 Java架构技术及相关中间件 163
Push软件开发的过程中,人们越来越意识到软件重用的重要性。异构的系统、不同的实现方案使软件的重用变得复杂。在中间件产生以前,应用软件不得不直接面对非常底层的东西。不同的硬件体系、不同的操作系统、不同的网络协议实现和不同的数据库等,这些使得应用程序复杂多变。面对易变的东西,软件设计师们已经习惯于通过添加中间层的方式来隔离变化。把应用软件所要面临的共性问题进行提炼、抽象,在操作系统之上添加一个可复用的部分,供成千上万的应用软件重复使用。这一技术思想最终构成了中间件。
14.1 WebLogic 164
14.2 WebSphere 178
14.3 WebService 182
第3部分 数据结构和设计模式
本部分主要介绍求职面试过程中出现的第二个重要的板块—数据结构,包括字符串的使用、堆、栈、排序方法等。此外随着外企研发机构大量迁入我国,外企针对软件工程知识的考核,包括设计模式、UML、敏捷软件开发,以及.NET技术和完全面向对象语言C#的面试题目将会有增无减,今后设计模式在面试中的比重会进一步提高。
第15章 字符串 191
基本上求职者进行笔试时没有不考字符串的。字符串也是一种相对简单的数据结构,结合指针,容易多次引起面试官反复发问。笔者曾不止一次在笔试或面试时遇到字符串试题。事实上,字符串也是一个考验程序员编程规范和编程习惯的重要考点。不能忽视这些细节,因为这些细节会体现你在操作系统、软件工程、边界内存处理等方面的知识掌控能力。
15.1 字符串基础问题 191
15.2 StringBuffer 194
15.3 正则表达式 202
15.4 数字流和数组声明 209
15.5 字符串其他问题 210
第16章 设计模式 221
地上本没有路,走的人多了也就成了路。设计模式如同此理,它是经验的传承,并非体系;是被前人发现,经过总结形成了一套某一类问题的一般性解决方案,而不是被设计出来的定性规则;它不像算法那样可以照搬照用。
16.1 UML 222
16.2 23种模式 235
16.3 软件工程 248
第4部分 UNIX、Oracle、网络
作为一个几十年来几乎没有修改过技术架构的系统,UNIX本身的性能和特点决定了它的成功。除了精细、谨慎地继承、改造现有技术以外,UNIX在总体设计思想方面也有所发展。这主要表现在操作系统的功能设计方面。在设计UNIX时,着眼于向用户提供包含有多种工具而且便于综合应用它们的程序设计环境,即构成一个能够提供各种服务的基础。本部分主要介绍求职面试过程中出现的第三个重要的板块—UNIX操作系统、Oracle数据库、网络知识。作为一个程序员,尤其是系统管理方面的程序员,对这几部分有深刻理解和领悟是相当重要的。
第17章 操作系统 253
操作系统面试例题主要涉及进程、线程、内存管理、垃圾回收,以及缓存等诸方面。
17.1 进程 253
17.2 线程 255
17.3 UNIX 259
17.4 AIX 264
17.5 Solaris 273
第18章 数据库和SQL语言 277
数据库面试例题主要涉及范式、事物、存储过程、SQL语言,以及索引等诸方面。
18.1 数据库理论问题 277
18.2 Oracle基础 280
18.3 Oracle-SQL语言 283
18.4 SQL语言常见选择题 289
第19章 计算机网络及分布式系统 303
网络面试例题主要涉及局域网、广域网和IP管理等诸方面。
19.1 网络结构 303
19.2 TCP/IP 305
19.3 网络安全 308
19.4 网络其他问题 309
第5部分 Java开源
EJB组件曾经被认为是一个重量级的组件。EJB 3.0规范的重要目标就是简化EJB的开发,提供一个相对轻量级的组件方案。Spring基于轻量内核,然后通过集成第三方的服务器来提供完整的架构。其实,当EJB 3.0推出,当Spring 2.0的程序需要特别的Javac进行编译时,重和轻模糊了。追求简单、轻量,是每一个应用架构的目标。对于企业应用的构建来说,不论轻重,只有架构合适的应用平台,才能最终适应项目的需要。
第20章 J2EE技术 323
从整体上讲,J2EE是使用Java技术开发企业级应用的一种事实上的工业标准,它是Java技术在不断适应和促进企业级应用过程中的产物。目前,Java平台有3个版本:适用于小型设备和智能卡的J2ME(Java 2 Platform Micro Edition)、适用于桌面系统的J2SE和适用于企业级应用的J2EE。Sun推出J2EE的目的是为了消除传统Client/Server模式的弊病,迎合Browser/Server架构的潮流,为应用Java技术开发服务器端应用提供一个平台独立的、可移植的、多用户的、安全的和基于标准的企业级平台,从而简化企业应用的开发、管理和部署。J2EE是一个标准,而不是一个现成的产品。
20.1 Spring轻量级架构 323
20.2 Hibernate 330
20.3 实体EJB技术 334
20.4 Java Bean技术 338
第21章 数据库相关 339
数据库相关面试例题主要包括JDO、事务、数据源架构、接口、分布式事务、结果集、数据连接池等方面。
21.1 JDO 339
21.2 数据源架构 340
第22章 Java中的Web设计 347
关于Web设计的面试题目涉及Session、Servlet和JSP等方面。
22.1 JSP代码 347
22.2 Servlet 349
第23章 Java中的网页设计 353
关于网页设计的面试题目涉及HTML、DHTML和XML等方面。
23.1 HTML 353
23.2 XML 354

第24章 Struts结构设计 359
Struts跟Tomcat、Turbine等诸多Apache项目一样,是开源软件,这是它的一大优点,使开发者能更深入地了解其内部实现机制。除此之外,Struts的优点主要集中体现在两个方面:TagLib和页面导航。TagLib是Struts的标记库,灵活运用,能大大提高开发效率。
24.1 AWT 359
24.2 Struts体系结构 361
第25章 Java安全性 371
Java平台提供的原始安全模式是沙箱模型。对于从开放网络中得到的不被信任的代码,该模型提供了一个非常严格的使用环境。沙箱模型的实质在于信任本地代码,使其可以完全访问重要的系统资源(例如文件系统);而下载的远程代码则不被信任,因此只能访问沙箱内提供的有限资源。沙箱模型通过Java开发工具包(JDK)发布,一般被用JDK编写的应用程序所采纳(包括支持Java的网络浏览器)。
25.1 内存管理 372
25.2 Java安全设置 380
第6部分 综合面试题
本部分主要介绍求职面试过程中出现的第五个重要的板块—英语面试、电话面试和智力测试。这里的英语面试不同于普通的英语面试。就一个程序员而言,最好能够用英文流利地介绍自己的求职经历,这是进外企非常重要的一步。此外还必须对几个常用的问题有相关的解答,比如你最大的缺点是什么。有些问题即便是中文你都很难回答,更何况是用英文去回答。但是求职过程本身就是一个准备的过程,精心地准备,等待机会—机会总是垂青于那些精心准备的人。
第26章 英语面试 389
如果你是一个具有战略眼光,期待进入国际性跨国大企业的求职者,本章值得你仔细研读。
26.1 面试过程和技巧 389
26.2 关于工作(About Job) 391
26.3 关于个人(About Person) 395
26.4 关于未来(About Future) 397
26.5 其他建议(Other Tips) 399
26.6 英文面试常用词汇 400
26.6.1 工作经历相关词汇 400
26.6.2 个人资料相关词汇 400
26.6.3 个人品质相关词汇 401
26.6.4 学历相关词汇 403
26.6.5 离职原因相关词汇 405
第27章 电话面试 407
求职时,经常会遭遇电话面试,戏称“触电”。我曾经在开会、洗澡、吃饭、坐车时都接到过电话。问的问题也是五花八门,千奇百怪。
27.1 电话面试之前的准备工作 407
27.2 电话面试交流常见问题 408
第28章 智力测试 417
智力测试,其实是考查应聘者在限制条件下解决问题的能力。这类题目会出现于跨国企业的招聘面试中,对考查一个人的思维方式及思维方式转变能力有极其明显的作用。而据一些研究显示,这样的能力往往也与工作中的应变与创新状态息息相关。
28.1 关于数字的智力测试 417
28.2 关于推理的智力测试 427
28.3 综合智力测试 429
附录A 简历模板 433
附录B 面试经历总结 445
更多介绍

其他说明
字数:528千字
页码:459
开本:16开

第一发货地
西安

相关书籍
用户评论共0 条
用户评论共 0