万本电子书0元读

万本电子书0元读

顶部广告

程序员面试笔试通关宝典电子书

★★精心甄选IT名企面试笔试、岗位测评、选拔晋升中涉及的经典编程题目(98%真题和真题演绎)。 ★★精准涵盖编程基础、核心技术、框架涉及、数据结构及算法等编程核心主题(100%解析透彻)。 ★★精心解析各类面试笔试中的高频考及难(100%场景模拟)。 ★★超值赠送职业规划库、软件技术库、面试资源库、求职资源库、本书全部源代码、编程水平测试系统、软件学习工具及电子书资源库。

售       价:¥

纸质售价:¥45.10购买纸书

49人正在读 | 0人评论 6.2

作       者:聚慕课教育研发中心

出  版  社:清华大学出版社

出版时间:2021-03-01

字       数:19.6万

所属分类: 科技 > 计算机/网络 > 程序设计

温馨提示:数字商品不支持退换货,不提供源文件,不支持导出打印

为你推荐

  • 读书简介
  • 目录
  • 累计评论(0条)
  • 读书简介
  • 目录
  • 累计评论(0条)
《程序员面试笔试通关宝典》深解析企业面试与笔试真题,并在解析过程中结合职业需求深地融并扩展了核心编程技术。《程序员面试笔试通关宝典》是专门为程序员求职和提升核心编程技能量身造的编程技能学习与求职用书。 全书共10章。首先讲解了求职者在面试过程中的礼仪和技巧;着带领读者学习数据类型、面向对象、字符串和数组、算法等基础知识,并深讲解了泛型、集合、框架以及异常处理等核心编程技术;同时还深探讨了在Java发中的线程、Servlet和JavaScript基础等高级应用技术;*后,对数据库中的核心技术行了扩展性介绍。 《程序员面试笔试通关宝典》多角度、全方位竭力帮助读者快速掌握程序员的面试及笔试技巧,构建从高校到社会的就职桥梁,让有志于从事软件行业的读者轻松步职场。另外,《程序员面试笔试通关宝典》赠送资源比较多,我们在《程序员面试笔试通关宝典》前言部分对资源包的具体内容、获取方式以及使用方法等做了详细说明。 《程序员面试笔试通关宝典》适合想从事软件行业或即将参加程序员面试求职的读者阅读,也可作为计算机相关专业毕业生的求职指导用书。<br/>【推荐语】<br/>★★精心甄选IT名企面试笔试、岗位测评、选拔晋升中涉及的经典编程题目(98%真题和真题演绎)。 ★★精准涵盖编程基础、核心技术、框架涉及、数据结构及算法等编程核心主题(100%解析透彻)。 ★★精心解析各类面试笔试中的高频考及难(100%场景模拟)。 ★★超值赠送职业规划库、软件技术库、面试资源库、求职资源库、本书全部源代码、编程水平测试系统、软件学习***工具及电子书资源库。<br/>【作者】<br/>聚慕课教育研发中心,是有一家软件发公司和线下培训机构共同组建的IT图书研发中心,具有18年的图书发和12年软件发经验。该研发中心有软件发团队,一批一线软件培训讲师,高校青年教师以及学科专家团队构成。致力于IT类图书策划、组稿、及编写。我们对计算机图书市场行科学、严谨的调查分析,紧跟高新科技,深度挖掘读者需求,整合优质作者资源,协助作者制定创作计划、确立创作思想与体例,并实时监控创作质量与度,确保做出让读者读得懂、用的好、学的会的计算机类图书。<br/>
目录展开

内容简介

前言PREFACE

本书内容

本书特色

1.结构科学,易于自学

2.题型经典,解析透彻

3.超多、实用、专业的面试技巧

4.专业创作团队和技术支持

本书附赠超值王牌资源库

上述资源的获取及使用

本书适合哪些读者阅读

创作团队

目 录

第1章 面试礼仪和技巧

1.1 面试前的准备

1.1.1 了解面试企业的基本情况以及企业文化

1.对招聘公司进行调研

2.企业文化

3.综合结论

1.1.2 了解应聘职位的招聘要求以及自身的优势和劣势

1.了解应聘职位的要求

2.自身优势和劣势

1.1.3 简历的投递

1.设计简历

2.投递简历

1.1.4 礼貌答复面试或笔试通知

1.电话通知

2.电子邮件通知

1.1.5 了解公司的面试流程

1.1.6 面试前的心理调节

1.调整心态

2.相信自己

3.保证充足的睡眠

1.1.7 仪容仪表

1.2 面试中的应对技巧

1.2.1 自我介绍

1.2.2 面试中的基本礼仪

1.肢体语言

2.眼神交流

3.姿势

4.姿态

1.2.3 如何巧妙地回答面试官的问题

1.2.4 如何回答技术性的问题

1.2.5 如何应对自己不会的题

1.2.6 如何回答非技术性的问题

1.2.7 当与面试官对某个问题持有不同观点时,应如何应对

1.2.8 如何向面试官提问

1.真实的问题

2.技术性问题

3.热爱学习

1.2.9 明人“暗语”

1.3 面试结束

1.3.1 面试结束后是否会立即收到回复

1.3.2 面试没有通过是否可以再次申请

1.3.3 怎样处理录用与被拒

1.录用回复

2.如何拒绝录用通知

3.如何处理被拒

1.3.4 录用后的薪资谈判

1.3.5 入职准备

1.制定时间表

2.人际网络

3.多向经理学习

4.保持面试的状态

第2章 编程面试基础

2.1 Java核心知识

2.1.1 数据类型

2.1.2 常量和变量

1.常量

2.变量

2.1.3 运算符和表达式

1.算术运算符

2.关系运算符

3.逻辑运算符

4.赋值运算符

5.位运算符

2.1.4 流程控制语句

1.顺序语句

2.条件语句

3.选择语句

4.循环语句

2.2 面向对象

2.2.1 面向对象的三大特性

1.封装

2.继承

3.多态

2.2.2 类和对象

1.类

2.对象

3.构造方法

2.2.3 抽象类和抽象方法

1.抽象类

2.抽象方法

2.2.4 接口

1.接口的声明

2.接口的实现

3.接口与抽象类的异同

2.3 精选面试、笔试题解析

2.3.1 Java基本数据类型之间如何转换

1.自动转换

2.强制转换

2.3.2 谈谈你对面向对象的理解

2.3.3 Java中的访问修饰符有哪些

2.3.4 重载和重写

1.方法重载

2.方法重写

2.3.5 什么是构造方法

2.3.6 局部变量与成员变量有什么区别

2.3.7 解释一下break、continue以及return的区别

1.break

2.continue

3.return

2.3.8 Java中的基本数据类型有哪些

1.整数类型

2.浮点数类型

3.字符类型

4.布尔类型

2.3.9 Java中this的用法

2.3.10 接口和抽象类

2.4 名企真题解析

2.4.1 值传递和引用传递

2.4.2 什么是类的反射机制

2.4.3 Java创建对象的方式有哪几种

第3章 字符串和数组

3.1 字符串

3.1.1 String类

3.1.2 字符串的创建

1.直接创建

2.使用new关键字创建

3.1.3 字符串的连接

1.使用“+”连接字符串

2.使用concat()方法

3.1.4 字符串的基本操作

1.String基本操作方法

2.字符串比较

3.字符串的查找

3.1.5 字符串的类型转换

3.2 一维数组

3.2.1 数组的定义

3.2.2 数组的声明

3.3 二维数组

3.3.1 数组的定义

3.3.2 数组的声明

3.4 数组的排序

1.数组冒泡排序

2.数组的选择排序

3.数组插入排序

4.设置两层循环

5.用Arrays.sort()方法排序

3.5 精选面试、笔试题解析

3.5.1 String是基本的数据类型吗

3.5.2 StringBuffer和StringBuilder有什么区别

3.5.3 求顺序排列数组中绝对值最小的数

3.5.4 统计字符中的字母、空格、数字和其他字符个数

3.5.5 比较两个字符串是否相等

3.5.6 用quicksort算法实现对整数数组的排序

3.5.7 输入字符串,打印出该字符串的所有排列

3.5.8 求最大值与最小值

3.5.9 在字符串中找出第一个只出现一次的字符

3.5.10 求中位数

3.5.11 反转句子的顺序

3.5.12 一个字符串中包含*和数字,将*放到数字的前面

3.6 名企真题解析

3.6.1 检查输入的字符串是否是回文(不区分大小写)

3.6.2 如何对数组进行旋转

第4章 算法

4.1 栈和队列

4.1.1 栈和队列的使用

4.1.2 栈和队列的实现

1.使用数组实现栈操作

2.使用链表实现栈操作

4.2 链表

1.链表的性质

2.链表的主要操作

3.创建链表

4.3 树

4.3.1 二叉树

4.3.2 二叉树的遍历

4.4 排序

4.4.1 归并排序

1.归并排序和选择排序的区别

2.归并排序的性能

4.4.2 桶排序

4.4.3 堆排序

4.4.4 快速排序

1.快速排序的算法分为4步

2.快速排序的性能

4.5 精选面试、笔试题解析

4.5.1 如何在单链表中插入节点

1.插入head节点之前

2.插入tail节点之后

3.在中间位置插入

4.5.2 如何判断两棵二叉树是否相等

4.5.3 冒泡排序的基本思想是什么,它是如何实现的

4.5.4 常用排序算法总结

1.冒泡排序

2.选择排序

3.插入排序

4.快速排序

5.堆排序

6.归并排序

7.桶排序

8.基数排序

4.5.5 如何打印两个链表的公共部分

4.5.6 在给定数组中,找到需要排序的最短子数组长度

4.5.7 如何判断二叉树是否为平衡二叉树

4.5.8 如何根据入栈序列判断可能的出栈顺序

4.5.9 如何使用两个栈来实现一个队列

4.5.10 如何实现最小栈

4.6 名企真题解析

4.6.1 如何使用一个数组来实现m个栈

4.6.2 如何找出单向链表中的倒数第n个节点

4.6.3 如何使用先序遍历和中序遍历重建二叉树

4.6.4 如何删除单向链表中的节点

第5章 泛型、集合和框架

5.1 泛型

5.1.1 什么是泛型

5.1.2 泛型接口和方法

5.2 集合

5.2.1 Collection集合

5.2.2 List集合

1.LinkedList类

2.ArrayList类

3.Vector类

4.Stack类

5.2.3 Set集合

5.2.4 Map集合

1.HashTable类

2.HashMap类

3.HashSet类

4.WeakHashMap类

5.2.5 集合的遍历

1.最基础的遍历方式

2.较为简洁的遍历方式

3.使用迭代器Iterator遍历

5.3 框架

5.3.1 Spring

5.3.2 Spring MVC

5.3.3 Struts2

5.3.4 Hibernate

5.4 精选面试、笔试题解析

5.4.1 泛型

1.泛型的概念

2.使用泛型的好处主要是解决元素存储的安全性问题

5.4.2 什么是限定通配符和非限定通配符

1.限定通配符的类型

2.通配符的限定

3.类型通配符的使用

5.4.3 Spring和Spring MVC有什么区别

5.4.4 什么是AOP

5.4.5 Collection接口

1.Set里面不允许有重复的元素

2.List表示有先后顺序的集合

3.Map是双列的集合

5.4.6 HashMap和HashTable有什么区别

1.父类不同

2.null值问题

3.线程安全性

4.遍历方式不同

5.初始容量不同

6.计算哈希值的方法不同

5.4.7 垃圾回收机制

1.什么是垃圾回收机制

2.Java的垃圾回收有什么特点

3.垃圾回收机制什么时候运行

4.怎么判断符合垃圾回收条件的对象

5.垃圾回收机制怎样工作的

6.一个Java程序能够耗尽内存吗

7.垃圾收集前进行清理——finalize()方法

5.4.8 Set里的元素如何区分是否重复

1.HashSet区分重复元素

2.TreeSet区分重复元素

5.4.9 Spring设计模式

1.Spring框架中有哪些不同类型的事件?

2.Spring框架中都用到了哪些设计模型?

3.使用Spring框架的好处是什么?

4.在Spring中如何注入一个Java集合?

5.4.10 接口的继承

5.5 名企真题解析

5.5.1 创建Bean的三种方式

1.调用构造方法创建Bean

2.调用静态工厂方法创建Bean

3.调用实例工厂方法创建Bean

5.5.2 遍历一个List有哪些不同的方式?

5.5.3 如何实现边遍历,边移除Collection中的元素

5.5.4 拦截器和过滤器

1.拦截器和过滤器的概念

2.拦截器和过滤器的区别

第6章 异常处理

6.1 知识总结

6.1.1 什么是异常

6.1.2 Java内置异常类

6.1.3 异常处理机制

6.1.4 throws/throw关键字

1.throws关键字

2.throw关键字

6.1.5 finally关键字

6.1.6 自定义异常

1.为什么需要自定义异常

2.异常类如何定义

3.语法格式

6.2 精选面试、笔试题解析

6.2.1 Java里的异常包括哪些

6.2.2 异常处理机制的原理和应用

6.2.3 throw和throws有什么区别

1.系统自动抛出的异常

2.语句抛出的异常

6.2.4 Java中如何进行异常处理

1.try…catch…finally语句块

2.throws函数声明

6.2.5 Java中如何自定义异常

1.为什么要使用自定义异常

2.自定义异常的缺点

3.自定义异常的规则

4.自定义异常的定义与使用

6.2.6 在声明方法中是抛出异常还是捕获异常

6.2.7 什么时候使用throws

6.2.8 Java中Error和Exception有什么区别

6.2.9 Java中的finally是否一定会执行

1.在执行异常处理代码之前程序已经返回

2.在执行异常处理代码之前程序抛出异常

3.finally之前执行了System.exit()

4.主线程终止时,后台线程会突然终止

6.2.10 运行时异常和检查异常有什么区别

6.3 名企真题解析

6.3.1 请说一下Java中的异常处理机制

6.3.2 什么是异常链

6.3.3 finally块中的代码执行问题

6.3.4 final、finally和finalize有什么区别?

1.final

2.finally

3.finalize

第7章 线程

7.1 线程基础知识

7.1.1 线程和进程

1.进程

2.线程

7.1.2 线程的创建

1.继承Thread类的创建

2.通过Runnable接口创建线程类

3.使用Callable和Future创建线程

7.1.3 线程的生命周期

7.1.4 线程同步机制

7.1.5 线程的交互

7.1.6 线程的调度

7.2 精选面试、笔试题解析

7.2.1 线程

7.2.2 死锁与活锁、死锁与饥饿

1.死锁、活锁、饥饿的概念

2.死锁与活锁的不同点

3.死锁与饥饿的不同点

7.2.3 Java中用到的线程调度算法是什么

7.2.4 多线程同步和互斥

7.2.5 怎样唤醒一个阻塞的线程

1.线程发生阻塞的原因

2.具体的唤醒方法

7.2.6 启动一个线程是用run()方法还是start()方法

7.2.7 notify()方法和notifyAll()方法有什么区别

1.锁池和等待池

2.根据锁池和等待池的概念分析notify()方法和notifyAll()方法的区别

7.2.8 乐观锁和悲观锁

1.乐观锁与悲观锁

2.两种锁的实现方法

3.两种锁的使用情景

4.乐观锁常见的两种实现方式

5.乐观锁的缺点

7.2.9 线程安全

7.2.10 线程设计

7.3 名企真题解析

7.3.1 如何停止一个正在运行的线程

7.3.2 导致线程阻塞的原因有哪些

7.3.3 写一个生产者—消费者队列

7.3.4 在Java中wait()和sleep()方法有什么不同

第8章 Servlet

8.1 Servlet基础

8.1.1 Servlet简介

8.1.2 Servlet的生命周期

8.1.3 get()和post()方法

8.1.4 Servlet HTTP状态码

8.1.5 Servlet过滤器

8.1.6 Cookie和Session

8.2 精选面试、笔试题解析

8.2.1 什么是Servlet

8.2.2 Servlet是如何运行的

8.2.3 常见的状态码有哪些

1.2XX:表明请求被正常处理了

2.3XX:表明浏览器需要执行某些特殊的处理以正确处理请求

3.4XX:表明客户端是发生错误的原因所在

4.5XX:服务器本身发生错误

8.2.4 GET和POST的区别

1.在原理方面的区别

2.表现形式的区别

3.HTTP响应

8.2.5 如何获取请求参数值

8.2.6 重定向和转发

1.重定向

2.转发

3.重定向和转发的区别

8.2.7 过滤器、拦截器和监听器分别是什么

1.过滤器

2.拦截器

3.监听器

4.监听对象的创建

8.2.8 JSP的内置对象和方法

8.2.9 Cookie和Session有什么区别

1.Cookie

2.Session

3.Cookie和Session的区别

8.2.10 Servlet执行时一般实现哪几个方法

8.2.11 Servlet是线程安全的吗

8.3 名企真题解析

8.3.1 JSP和Servlet有哪些相同点和不同点

8.3.2 Servlet的生命周期是什么

1.初始化阶段

2.处理客户端请求阶段

3.终止阶段

8.3.3 如何实现Servlet的单线程模式

8.3.4 四种会话跟踪技术

1.隐藏表单域

2.URL重写

3.Cookie

4.Session

第9章 JavaScript基础

9.1 JavaScript

9.1.1 组成结构

9.1.2 核心语法

1.变量的声明和赋值

2.数据类型

3.数组

4.运算符号

5.逻辑控制语句

6.注释

7.常用的输入/输出

8.常用的系统函数

9.1.3 函数的定义和调用

9.1.4 JavaScript操作BOM对象

1.Windows对象

2.History对象和Location对象

9.1.5 JavaScript操作DOM对象

1.根据层次访问节点

2.节点信息

3.操作节点

4.元素属性

9.2 jQuery

9.2.1 jQuery工作原理

9.2.2 事件与动画

1.事件

2.动画

9.2.3 使用jQuery操作DOM

1.DOM操作的分类

2.样式操作

3.内容操作

4.节点属性操作

9.3 Vue.js

9.3.1 Vue.js简介

9.3.2 基础语法

1.引入

2.使用

9.3.3 Vue.js组件

1.组件的注册

2.prop

3.动态prop

4.prop验证

5.自定义事件

9.4 AngularJS

9.4.1 AngularJS表达式

9.4.2 AngularJS指令

9.4.3 AngularJS Scope

1.Scope概述

2.Scope(作用域)特点

3.$scope(作用域)的生命周期

9.4.4 事件、模块和表单

1.AngularJS中的事件

2.AngularJS模块

3.表单处理

9.5 精选面试、笔试题解析

9.5.1 如何实现DOM对象和jQuery对象间的转换

1.jQuery对象转化成DOM对象

2.DOM对象转化成jQuery对象

9.5.2 AngularJS的双向数据绑定原理是什么

9.5.3 如何使用jQuery实现隔行变色的效果

9.5.4 谈谈你对Vue.js是一套渐进式框架的理解

9.5.5 如何改变浏览器地址栏中的网址

9.5.6 jQuery操作select下拉框的多种方法

9.5.7 如何在Vue.js中实现组件之间的传值

1.父组件向子组件传值

2.子组件向父组件传值

3.组件传值给兄弟组件

9.5.8 什么是vue的计算属性

1.计算属性用法

2.getter()方法和setter()方法

3.计算属性缓存

9.5.9 如何在页面上实现前进、后退

1.在数组最后进行增加与删除操作

2.用两个栈实现浏览器的前进、后退功能

9.5.10 JavaScript访问HTML元素的几种方式

1.根据ID访问HTML元素

2.根据CSS选择器访问HTML元素

3.利用节点关系访问HTML元素

9.5.11 在HTML页面中如何引用JavaScript

1.在HTML页面的头部head标签中引用

2.在HTML页面的主体body标签内引用

3.在元素事件中引用

4.引入外部JS文件

9.5.12 请解释JavaScript中this是如何工作的

1.方法调用模式

2.函数调用模式

3.构造器调用模式

4.使用apply()或call()方法调用模式

9.5.13 v-if和v-show有什么区别

1.实现本质方法区别

2.编译的区别

3.编译的条件

4.性能

5.用法

9.5.14 请简述$compile的用法

9.6 名企真题解析

9.6.1 如何使用JavaScript实现冒泡排序

9.6.2 如何取消$timeout()以及停止一个$watch()

9.6.3 JavaScript实现倒计时

1.页面布局

2.JS动态显示

9.6.4 请写出完整的vue-router导航解析流程

第10章 数据库

10.1 数据库的分类

10.1.1 关系数据库

1.关系模型的数据结构

2.关系模型的数据操纵与完整性约束

3.关系模型的优缺点

10.1.2 非关系数据库

10.2 SQL

1.SQL进程

2.SQL标准命令

10.3 数据库对象

10.3.1 视图

10.3.2 触发器

1.定义一个UPDATE触发器

2.执行UPDATE操作

10.3.3 存储过程

1.存储过程的作用

2.如何使用存储过程

10.4 事务

10.4.1 事务特性

10.4.2 隔离级别

10.5 并发控制和死锁

10.5.1 并发控制

10.5.2 死锁和活锁

10.5.3 封锁协议和两段锁协议

1.封锁协议

2.两段锁协议

10.6 索引

10.7 安全机制

10.7.1 用户标识与鉴别

10.7.2 存取控制

1.自主存取控制

2.强制存取控制

10.7.3 视图机制

1.创建视图的语法格式

2.删除视图

3.查询视图

4.更新视图

10.7.4 审计技术

10.7.5 数据加密

10.8 精选面试、笔试题解析

10.8.1 什么是数据的物理独立性和逻辑独立性

10.8.2 关于数据库的概念区分

10.8.3 SQL中提供了哪些自主存取控制语句

10.8.4 数据库系统的安全性控制方法

10.8.5 产生死锁的原因有哪些

1.产生死锁的四个必要条件

2.产生死锁的原因

3.避免死锁的方法

10.8.6 SQL的约束有哪几种

1.主键约束

2.默认值约束

3.唯一约束

4.外键约束

5.非空约束

10.8.7 数据库中表和视图有什么关系

10.8.8 数据库中的索引在什么样的情况下会失效

10.8.9 自主存取控制和强制存取控制

1.自主存取控制和强制存取控制

2.两者区别

10.8.10 存储过程

1.什么是存储过程,需要什么来调用

2.存储过程有哪些优缺点

10.8.11 数据库的触发器是什么

10.8.12 索引有什么作用,优缺点有哪些

10.8.13 数据库的完整性规则指什么

10.8.14 什么是关系数据库,它有哪些特点

10.9 名企真题解析

10.9.1 什么是视图,是否可以更改

10.9.2 存储过程和函数有什么区别

10.9.3 权限的授予和回收应如何实现

1.授予权限

2.收回权限

10.9.4 数据库中的SQL语句怎样优化

累计评论(0条) 0个书友正在讨论这本书 发表评论

发表评论

发表评论,分享你的想法吧!

买过这本书的人还买过

读了这本书的人还在读

回顶部