下面是Java程序员面试失败最有可能的5大原因

下面是Java程序员面试失败最有可能的5大原因,当然也许这5点原因适用于所有的程序员,所以,如果你是程序员,请认真阅读以下内容。

1、说得太少

尤其是那些开放式的问题,如“请介绍下你自己”或“请讲一下你曾经解决过的复杂问题”。面试官会通过你对这些技术和非技术问题的回答来评估你的激情。他们也会通过模拟团队氛围和与你的交流互动来判断你的经验和能力。

所以,仅仅只用两三句话来回答不但不能显示出你对这个专业的兴趣,还会让整个面试过程显得非常无聊。如果你不能很好地说明你的经验、成就和技能可以给企业带来的价值,那么你的竞争力毫无疑问就高不起来。所以,你需要对一些最常见的开放式问答作充分的准备,学会推销自己。

2、说得太多

不断地说,不断地说,却并没有什么实质性的内容。换句话说,就是废话连篇,言之无物。如果你不能简洁的解释问题,那么面试官就会怀疑你在工作时的表现是不是也会像你的谈话一样拖泥带水?可以先问问面试官,确定是否真的需要详细解释。

解释也是一门艺术,关键是确定重点,如果需要的话再深入到细节。当聊到业务的时候,就应该从业务的角度看问题,不要涉及任何技术术语。学会用简洁明了的方式解释问题。如果你能时刻把握主旨,那么这一点也不是问题。

3、回答不出

一些必知的基本技术问题面试不是技术竞赛,不是看谁答对的问题多,但是有一些“必须知道”的核心Java和Web基础知识,你不能不知。例如,对于Java开发人员

1)不知道“==”和equals()之间的区别。

2)不知道equals()和hashCode()方法被隐式调用时的约定。

3)不知道OO的概念和设计原则。

4)不能很好地处理多线程。

5)不知道如何在HTTP客户端与服务器端之间保持状态。

6)不能解释曾投入精力过的应用程序的高层体系结构。

7)不知道SQL。

?

4、既写不好简单的代码,又回答不出如何解决棘手的问题

作为一个开发人员,你应该根据自己的经验水平,来针对给定的问题和情况编写代码。特别是如果碰到一个比较棘手的问题,那么即使你还没有解决方案,也应该将你的思路讲给面试官听。当然这在面试时会让人特别紧张,尤其是在还有时间限制的情况下,但是你也必须保持冷静,至少应该说明你将如何试着去解决问题的方法。

5、糟糕的礼仪和态度

迟到,不适宜的着装,抖手抖脚,没有眼神接触,过于紧张,没有提问,显示不出对这份职业的兴趣,“我什么都知道”的高傲态度,贬低你的现在和以前的雇主,遇到技术问题时烦躁不安或者垂头丧气,为自己找理由而不是虚心接受错误,与面试官发生争执,不好的肢体语言,随波逐流而没有自己的看法,过于呆板,撒谎,嗓门太大,无法成为良好的倾听者,等等。

提示:面试官要找的不是技术明星,而是实实在在具备了合适的技术技能、软技能、端正的态度以及能为企业获取利益、全面的专业人才。因此,不妨先研究下想要应聘的机构,深入了解其工作规范以调整回答问题时的方向和重点。将每一场面试都当作免费的培训课程,积极调整心态,不但能达到一个双赢的局面,还可以减少紧张的情绪,从而获得更好的表现。这样即使你并没有得到那份工作,也可以由此学到点什么,获得进步。

 

第二篇:Java程序员面试指南

Java程序员面试指南

编辑推荐

  从面试的角度来梳理Java程序员的技术功底,以项目开发经理的眼光来审视编程知识的掌握  分4大部分,涵盖常见的Java面试题

  近300个经典面试题分析,详解Java程序员面试的方方面面

  先问题分析,后参考答案,读者知其然更知其所以然

  代码注释详尽,帮助读者快速理解代码

  大量技巧和注意点,帮助读者快速提高技术水平

本书简介

本书涵盖了Java面试中会经常出现的问题,并指导读者快速、巧妙地解决问题。全书共分18章,内容涵盖了面试前必须要知道的几件事、Java程序基础、Java语言中的符号、数据类型及类型转换、数组与字符串、流程控制、异常处理及内存管理、输入/输出流、面向对象、Java的多线程、包和访问控

制、集合、数据库、J2EE技术、XML/UML技术、Servlet/JSP技术以及常见的上机编程题和思维训练等有趣的试题。

目录

第一篇 求职你准备好了吗

 第1章 面试前必须知道的几件事

  1.1 做好自己的职业规划

   1.1.1 走好职业生涯第一步

   1.1.2 确定符合自己的人生目标

   1.1.3 紧跟社会发展的步伐

   1.1.4 为职业生涯画上圆满的句号

  1.2 面试的流程

   1.2.1 填写求职申请表

   1.2.2 笔试

   1.2.3 面试

   1.2.4 压力测试

   1.2.5 外语能力测试

   1.2.6 综合测试

  1.3 一个漂亮的简历

   1.3.1 中文简历的制作

   1.3.2 英文简历的制作

   1.3.3 如何用E-mail投递简历

   1.3.4 简历浏览量低的原因

   1.3.5 华丽的辞藻未必是美的

   1.3.6 简历被筛选的秘密

  1.4 着装要注意的问题

   1.4.1 面试着装(男生篇)

   1.4.2 面试着装(女生篇)

  1.5 面试官经常问到的几个问题

   问题1 谈谈你的缺点

   问题2 你为什么选择我们公司

   问题3 对这项工作,你有哪些可预见的困难

   问题4 如果我录用你,你将怎样开展工作

   问题5 与上级意见不一时,你将怎么办

   问题6 你能为我们做什么

   问题7 你是应届毕业生,缺乏经验,如何能胜任这项工作

   问题8 你希望与什么样的上级共事

   问题9 你在前一家公司离职的原因是什么

   问题10 你以前的上级对你的评价如何

   问题11 如果你的工作出现失误,给本公司造成经济损失,你认为该怎么办

   问题12 怎样理解团队?请举例并说明启示

  1.6 大公司VS小公司

   1.6.1 大公司VS小公司的区别

   1.6.2 大公司的利和弊

   1.6.3 小公司的利和弊

第二篇 Java程序设计

 第2章 Java程序基础

  2.1 环境搭建与开发

    面试题1 如何在Linux环境下安装JDK    面试题2 如何编译运行应用程序    面试题3 Java开发工具

    面试题4 关于Java命令提示符的问答题  2.2 Java语言概述

    面试题5 关于Java命名规范的代码分析题    面试题6 关于Java代码安全的选择题    面试题7 关于Java语言的特性的问答题    面试题8 关于Java的类和对象的选择题  2.3 变量与常量

    面试题9 变量及其范围

    面试题10 根据代码找出错误原因       面试题11 修改错误代码

    面试题12 关于静态方法的代码分析题    面试题13 关于在类中定义方法的选择题    面试题14 关于main()的选择题    面试题15 关于静态变量的选择题    面试题16 关于实例成员和类成员区别    面试题17 找出错误的代码

 第3章 Java语言符号

  3.1 标识符

    面试题1 选择合法的标识符

    面试题2 找出错误的代码

  3.2 关键字

    面试题3 Java中的关键字1

    面试题4 Java中的关键字2

    面试题5 关键字语法含义

  3.3 分隔符

    面试题6 Java中的注释1

    面试题7 Java中的注释2

  3.4 算数运算符

    面试题8 求表达式的结果

    面试题9 编程计算103的值

  3.5 关系运算符

    面试题10 确定x的取值范围

    面试题11 equals()和==

    面试题12 分析程序写出结果

  3.6 逻辑运算符

    面试题13 根据程序选择正确的运行结果  3.7 位运算符

    面试题14 指出错误代码的位置    面试题15 选出相等的值

    面试题16 根据代码,推测结果  3.8 条件运算符

    面试题17 关于条件运算符的操作规则  3.9 赋值运算符

    面试题18 选出正确的赋值语句

  3.10 优先级和结合性

    面试题19 运算符的结合性测试

    面试题20 写出程序运行结果

 第4章 数据类型及类型转换

  4.1 整型数据

    面试题1 int和Integer有什么区别

    面试题2 正确的赋值方式

    面试题3 选择合法的声明

    面试题4 正确表示八进制值

    面试题5 Java的原始数据类型

    面试题6 int的取值范围

    面试题7 根据代码选择正确的答案

    面试题8 正确表示10的十六进制值

    面试题9 判断表达式的正误

  4.2 实型数据

    面试题10 选出对float变量的合法声明    面试题11 正确的赋值

    面试题12 合法的声明

  4.3 字符型数据

    面试题13 char的取值范围

    面试题14 哪些表达式的结果是正确的    面试题15 在char中是否能存储汉字

  4.4 布尔型数据

    面试题16 对boolean型变量的声明哪个是正确的    面试题17 选出合法的表达式

  4.5 数据类型转换

    面试题18 选出合法的类型转换

    面试题19 基本数据类型与String之间的转换  4.6 值传递

    面试题20 选择正确的结果

    面试题21 final的参数传递

 第5章 数组与字符串

  5.1 一维数组

    面试题1 选择合法的数组声明

    面试题2 对数组进行初始化

    面试题3 默认初始化

    面试题4 根据代码选择正确的答案

    面试题5 根据代码选出对结果正确描述的选项    面试题6 编程题(求最大数)

  5.2 二维数组

    面试题7 判断程序的运行结果

    面试题8 将正确的选项插入指定的位置    面试题9 选择二维数组的合法声明

    面试题10 获得数组的大小

    面试题11 编程题(根据要求设计程序)  5.3 类String字符串

    面试题12 分析代码的输出结果

    面试题13 String的数据类型

    面试题14 判断程序的返回结果

    面试题15 判断创建的对象个数

  5.4 类StringBuffer字符串

    面试题16 String和StringBuffer的区别

    面试题17 正确的构造方法

    面试题18 setLength方法的作用

 第6章 流程控制

  6.1 if控制语句

    面试题1 分析代码的运行结果

    面试题2 写出if语句的运行结果

    面试题3 分析程序代码是否有错

    面试题4 编程题

  6.2 switch控制语句

    面试题5 分析代码的运行结果

    面试题6 根据已知结果选择未知条件

    面试题7 switch语句的使用范围

    面试题8 找出代码中的错误并改正

    面试题9 编程题

  6.3 循环控制语句

    面试题10 选出错误代码的位置(while)    面试题11 分析代码选择正确的答案(for)    面试题12 写出程序的运行结果(do-while)    面试题13 判断dowhile语句的输出结果

    面试题14 编程题

  6.4 跳转控制语句

   6.4.1 break跳转语句

   6.4.2 continue跳转语句

   6.4.3 return返回语句

    面试题15 分析程序的运行结果

    面试题16 关于break和continue的描述哪些是正确的    面试题17 可以返回最大值的方法

    面试题18 编程题

 第7章 异常处理及内存管理

  7.1 异常的分类

    面试题1 运行时异常与一般异常的异同

    面试题2 所有异常的基础类

  7.2 异常的处理方式之一:try/catch

    面试题3 分析代码的运行结果

    面试题4 对try-catch-finally的正确理解

    面试题5 分析代码的运行结果

  7.3 异常的处理方式之二:throws

    面试题6 正确的异常声明方式

    面试题7 使用throws处理异常

  7.4 异常的处理方式之三:throw

    面试题8 分析程序的运行结果

    面试题9 异常处理

  7.5 内存的管理

    面试题10 垃圾回收

    面试题11 对象在什么地方变得

   适用于垃圾收集

    面试题12 对垃圾回收的正确描述    面试题13 关于finalize()的正确描述    面试题14 垃圾收集

    面试题15 Sun公司程序员考试中的常见题型 第8章 输入/输出流

  8.1 File类

   8.1.1 目录和文件管理

   8.1.2 随机存取文件RandomAccessFile类

    面试题1 FileInputStream类构造方法的参数    面试题2 建立文件“file.txt”

  8.2 Stream类

   8.2.1 字节流的处理方式

   8.2.2 Reader类和Writer类   

   8.2.3 FileReader和FileWriter类

   8.2.4 BufferedReader和BufferedWriter类    面试题3 InputStream类中的方法

    面试题4 什么是System.out

    面试题5 分析代码的编译运行结果    面试题6 将字符写入文件末尾

    面试题7 补全程序

    面试题8 创建一个InputStreamReader的实例    面试题9 编程题

 第9章 面向对象

  9.1 抽象

  9.2 继承

    面试题1 分析程序的输出结果

    面试题2 根据给定代码判断输出结果    面试题3 对程序的正确分析

  9.3 封装

   9.3.1 成员变量的封装

   9.3.2 成员函数的封装

    面试题4 类的描述

    面试题5 对封装的理解

  9.4 多态

   9.4.1 方法重载

   9.4.2 方法重写

    面试题6 分析所执行的代码

    面试题7 分析代码的运行结果

    面试题8 实现多态的机制

  9.5 内部类

    面试题9 实例分析

   9.5.1 在类中创建一个内部类的实例   9.5.2 在对象中创建一个内部类的实例   9.5.3 关于final声明的一个实例

    面试题10 分析代码的输出结果

    面试题11 关于内部类的问答题

    面试题12 找出代码中的错误

  9.6 抽象类

    面试题13 关于抽象方法的   问题    面试题14 编程题,仔细看清代码的需求  9.7 接口

    面试题15 抽象类和接口的区别

    面试题16 根据代码找出错误

  9.8 方法的重写和重载

   9.8.1 方法重写的实例

   9.8.2 方法重载的实例

    面试题17 重写和重载的区别

    面试题18 哪些方法可以加入类Man中  9.9 构造函数

   9.9.1 合法的构造函数

    面试题19 选择合法的构造函数

   9.9.2 构造函数重载

    面试题20 写出程序的运行结果

    面试题21 关于构造函数的选择题

    面试题22 指出代码的错误之处

    面试题23 针对this()方法的找错题

 第10章 Java的多线程

  10.1 认识线程

   10.1.1 线程的5种状态

   10.1.2 关于单线程的一个实例

    面试题1 关于线程基础的简答题

    面试题2 对线程的正确叙述

  10.2 多线程的创建方式

   10.2.1 继承Thread类创建线程的方式

   10.2.2 实现Runnable接口创建线程的方式

    面试题3 简要回答创建线程的两种方式及区别    面试题4 对Threads的正确描述

  10.3 线程和进程

  10.4 线程的同步

   10.4.1 多线程同步代码块

   10.4.2 多线程同步方法

    面试题5 线程同步的方法

    面试题6 分析代码片段

    面试题7 找出代码中的错误

    面试题8 分析程序的输出结果

    面试题9 指向不同类实例的多线程

    面试题10 编程题(Thread和Runnable)  10.5 线程的操作

    面试题11 设置线程名称

    面试题12 关于isAlive()的推测题

    面试题13 关于resume()的选择题

    面试题14 关于sleep()和write()的简答题    面试题15 关于yield()方法的选择题    面试题16 编程题

 第11章 包和访问控制

  11.1 包的创建及使用

   11.1.1 包的创建

   11.1.2 包的使用

    面试题1 选择正确的代码片段

    面试题2 选择正确的Java语法

    面试题3 了解native声明

    面试题4 选择正确的答案

  11.2 Java常用类库

   11.2.1 Java JDK中的常用软件包

   11.2.2 容易混淆的软件包

    面试题5 Object中hasCode()的返回类型值

    面试题6 Object类中的clone()方法

    面试题7 hasCode()与equals()

    面试题8 Math.abs()方法的使用

    面试题9 Math. ceil(-6.8)的值等于多少

    面试题10 谁的值会等于12

  11.3 访问控制

    面试题11 不能被外部类所访问的修饰符

    面试题12 只能被同包中的类访问的修饰符    面试题13 正确的声明

    面试题14 类中的调用方法

 第12章 类集框架

  12.1 类集接口

   12.1.1 Collection接口的使用方法

   12.1.2 List接口的使用方法

   12.1.3 Set接口的使用方法

   12.1.4 SortedSet接口的使用方法

   12.1.5 Iterator接口的使用方法

    面试题1 Collection和Collections的区别

    面试题2 用什么方法来区分Set里的元素是否重复    面试题3 Collection接口的子接口

    面试题4 集合框架中的核心接口

    面试题5 可以按序存放元素的集合接口

    面试题6 根据程序代码选择正确的选项

  12.2 接口实现类的使用

   12.2.1 List接口的实现类

   12.2.2 Set接口的实现类

   12.2.3 Map映射接口

    面试题7 HashMap和Hashtable的区别

    面试题8 heap和stack的区别

    面试题9 常用的类集合

    面试题10 关于List、Map、Set的问答题

    面试题11 关于ArrayList、Vector、LinkedList的问答题    面试题12 覆盖方法

    面试题13 分析代码的输出结果

    面试题14 写出程序的输出结果

    面试题15 接口java.util.Map.Entry中定义的原型是什么

    面试题16 如何实现hashCode()方法

    面试题17 实现Map接口的对象

 第13章 数据库

  13.1 SQL

   13.1.1 SQL的基本数据定义语句

   13.1.2 SQL的基本数据操作语句

   13.1.3 SQL中的统计函数

    面试题1 如何使用LIKE运算符

    面试题2 如何使用ORDER BY子句

    面试题3 对约束的理解

    面试题4 关于SQL的面试题(中兴面试题)  13.2 JDBC数据库编程

   13.2.1 创建数据源

   13.2.2 加载驱动程序

   13.2.3 连接数据源

   13.2.4 对数据库的操作

    面试题5 Connection类中的事物处理方法有哪些    面试题6 JDBC连接数据库的步骤

    面试题7 用JDBC写一段程序

  13.3 Oracle数据库

    面试题8 判断SELECT语句的查询结果

    面试题9 处理分组的子句是什么

    面试题10 可以返回非空表达式的函数是什么    面试题11 如何理解索引

    面试题12 PL/SQL的内置数据类型是什么    面试题13 什么是视图

    面试题14 冷备份和热备份的不同点及其各自的优点    面试题15 如何利用备份恢复数据库

  13.4 SQL Server数据库

    面试题16 COUNT(*)函数的作用是什么

    面试题17 请选择正确的答案

    面试题18 分析SQL语句的结果

    面试题19 选择正确的SQL语句

    面试题20 TRUNCATE TABLE命令的作用是什么    面试题21 如何理解BETWEENAND

    面试题22 选择正确的SELECT语句

    面试题23 SQL Sever的系统数据库是什么       面试题24 删除数据表

    面试题25 如何声明游标

第三篇 Java Web开发

 第14章 J2EE(Java EE)和EJB 3.0技术开发

  14.1 J2EE的核心API与组件

    面试题1 什么是J2EE

    面试题2 关于J2EE的名词解释

  14.2 EJB组件

   14.2.1 搭建EJB 3.0开发环境

   14.2.2 Session Bean(会话Bean)

   14.2.3 Message-Driven Bean(消息驱动Bean)

   14.2.4 Entity Bean(开发实体Bean)

    面试题3 什么是EJB

    面试题4 EJB规定禁止的操作有哪些

    面试题5 EJB与Java Bean有什么区别

    面试题6 EJB的类型有哪几种

    面试题7 Session Bean的分类

    面试题8 开发无状态会话Bean

    面试题9 在Entity Bean中如何与表进行映射

    面试题10 Entity Bean中哪些方法实现了数据同步

    面试题11 Entity Bean的分类

    面试题12 正确理解Message-Driven Bean

    面试题13 Bean的生命周期范围

  14.3 常见的J2EE应用服务器

    面试题14 如何在WebLogic上部署EJB

    面试题15 如何给WebLogic的内存指定大小

    面试题16 J2EE的应用服务器有哪些

    面试题17 persistent与non-persistent的区别

    面试题18 在WebLogic中发布EJB需要哪些配置文件    面试题19 JBoss服务器监听服务默认端口是什么

    面试题20 创建一个Enterprise Application的同时还会   创建哪个组件

    面试题21 选出错误的操作

    面试题22 创建JDBC

 第15章 XML、UML和MVC

  15.1 XML

   15.1.1 XML的基础知识

   15.1.2 XML解析模型

    面试题1 XML有哪几种解析技术

    面试题2 如何使用XML技术

    面试题3 选择正确的描述

    面试题4 在DTD中哪个元素属性可加不可加

    面试题5 XML的组成包括几部分

    面试题6 关于对于内部DTD文档的叙述,哪个选项是正确的    面试题7 在DTD文档中CONTENT的规范

    面试题8 什么是对象模型(DOM)

  15.2 UML

    面试题9 选择正确的UML类图

    面试题10 活动图强调什么

    面试题11 跨越多个用例的单个

   对象的行为类型图

    面试题12 什么是用例图

    面试题13 用例之间的关系

    面试题14 表示系统行为的图有哪些

    面试题15 用例图由哪几部分组成

    面试题16 什么是模型

  15.3 MVC

    面试题17 理解MVC设计模式

    面试题18 MVC各个部分的实现技术及实现方法

 第16章 JSP/Servlet技术

  16.1 JSP的核心技术

   16.1.1 JSP的基本语法

   16.1.2 JSP指令

   16.1.3 JSP动作

   16.1.4 JSP内置对象

    面试题1 在浏览器中如何访问JSP文件

    面试题2 分析代码的输出结果

    面试题3 JSP页面跳转的方式

    面试题4 JSP位于MVC模式的哪一层

    面试题5 标签库的指令

    面试题6

插图摘要

书摘插图   第1章 面试前必须知道的几件事

  一次次的求职面试考试,就像一场场无形的战役一样,决定着不同的人生和不同人的命运。如果想在战役中取得胜利,就必须做到知己知彼,才能百战百胜。想要在众多对手中脱颖而出,靠的不再是健壮的体魄,而是灵敏的思维和充分的准备,在战斗即将打响之际,你准备好了吗?通过学习本书,你将准备充分,信心十足,摩拳擦掌等待战场上大显身手的那一刻。

  1.1 做好自己的职业规划

  一个人的职业生涯会贯穿其一生,是一个漫长的过程。科学地将其划分为不同的阶段,明确每个阶段的特征和任务并做好规划,对更好地从事自己的职业、实现确定的人生目标非常重要。  那么什么是职业规划呢?职业规划就是准确评价个人特点和强项,评估个人目标和现状的差距,发现新的职业机遇,重新认识自身的价值并使其增值,准确定位职业方向,要以既有的成就为基础,将个人、事业与单位联系起来,为确立人生的方向提供奋斗的策略,增强职业竞争力。  1.1.1 走好职业生涯第一步

  由学校走上工作岗位,是人生事业发展的起点。如何迈出第一步,直接关系到今后的成败。职业的选择是迈出第一步的关键。那么如何选择适合的职业呢?

  1.根据专业选择职业

  对于刚刚从大学校门走出来的毕业生而言,可以运用到社会中的知识仅仅是在大学中学到的专业知识,所以只能凭着这点去寻找第一份工作。人和人是不同的,自然企业对人才的需求也是不同的。在这里可以对人才进行等级划分。

  高学历人才:有的企业比较注重学历,比如国企。大型的国有企业拥有大量的精英人才,硕士及博士占了大约2/3,剩下的几乎是本科,专科生几乎是微乎其微。因为他们认为学历代表能力,能在千军万马的考生中闯进重点院校的肯定不是一般战士,他们一定有着与众人不同的学习方式和超强的自我学习能力,这样的人才企业怎能放过。所以高学历毕业生的就业率会大一些。

  高技术人才:私人企业对于学历的要求不是很高,但是对专业技能的要求却很严格,私企不会像国企那样慢慢地培养一个人才,它需要的是在最短的时间内能为公司创造利润的员工,所以专业功底比较强的毕业生就业率会大一些。

  无学历无技术人群:对于要学历没学历、要技术没技术的毕业生是不是就得成为“啃老”一族呢?非也,能否自己养活自已,主要还是看心态。学历低,那是板上钉钉的事了,是无法修复的事实,不可能让时间倒退,只能怪当初没有听家长的话好好学习,现在该品尝到后悔药的滋味了吧。没关系,条条大道通罗马,学历不行,咱还有技术。这时就需要分析社会需要的是什么人才?什么专业更容易找到工作?然后选择一个适合自己的专业去学习。

  ……

下载后 点击此处查看更多内容

相关推荐