java基础

全是基础不用多说肯定考的多,尤其是招银

  • OOP特性/java语言特性:封装、继承、多态
  • 多态具体的表现:多态应用举例、如何调用父类方法(super)、重写和重载(重写父类方法的规则、构造方法能否重写。。)
  • 类、抽象类、接口:抽象类和接口的区别、引用传递和值传递、java只有值传递
  • 泛型
  • 反射:class类的意义
  • StringBuffer、StringBuilder、String区别:String常用方法
  • static关键字在那个内存区域
  • java常用包有哪些
  • final关键字
  • 创建新对象的方法
  • java如何缓存(与redis、memcache无关)

容器

简单

  • 集合类的层次关系,简单介绍
  • equals()、hashcode()的区别,重写注意事项
  • TreeMap了解吗
  • HashMap、HashTable、ConcurrentHashMap:区别、hashMap实现原理、put方法做了什么、底层源码、自定义类放入hashmap的要求(重写equals和hashcode)
  • LinkedList和ArrayList区别

线程

难点在于被问到手写线程代码,那就算自己倒霉了;否则线程还算简单

  • 线程和进程
  • 线程定义方法,这些方法的区别
  • 线程状态转换图
  • concurrent包有啥内容
  • BlockingQueue原理
  • 线程安全的容器
  • 线程池相关:线程池参数意义,如何设置线程池参数,如何调优线程池
  • 程间通信:概念、手段:同步包下的同步器、volatile、synchronized、单例+多线程、join
  • 线程同步:概念
  • 死锁:原理和解决方式、手写死锁
  • 综合题目(个人认为难度较大,遇到算你倒霉):景区多个入口出口统计人数、多线程保证一个对象、双重检查单例手写、生产者消费者手写、手写多个线程按顺序执行
  • 乐观锁悲观锁思想:乐观锁和悲观锁的常用实现方式(乐观锁:版本号机制、CAS算法)、常用的乐观锁悲观锁都有啥(乐观锁atomic包下的、悲观锁synchronized reentrantLock)
  • 并发访问错误的解决
  • 用lock实现先读再写(能答出来的我五体投地)

数据库

问的就那些,背就完事了,很简单

  • 手写基础语句
  • 事务(!!很重要):隔离级别、四个特性、不同隔离级别产生的问题(脏读幻读不可重复读)
  • 存储过程 | 函数 | 触发器:存储过程和函数的区别,如何选择使用;触发器分类
  • 存储引擎
  • 高级查询相关:内外链接的区别、左右链接的区别
  • 索引相关(!!很重要):原理、索引优缺点、索引设计优化策略、常用索引类型、索引生效场景
  • 数据库(非索引)优化
  • 数据量巨大时,如何分库分表,场景、条件和实现方式
  • B树和B+树:区别、画一个B+树
  • 设计无限极分类表
  • union和union all
  • 查询结果去重:distinct和group by的区别
  • 数据库连接池:最大连接数、最小连接数

JVM

简单

  • jvm运行时内存分配:各区域比例设置
  • GC:GC算法,堆和GC算法;GC时间
  • finalize方法
  • 内存泄漏的产生和解决(严格来说不属于jvm相关知识)
  • 对象创建流程
  • 参数:自己改过什么JVM参数
  • 类初始化顺序(加载连接初始化)
  • 对象如何判断是垃圾
  • 回收过程
  • 静态变量实例域(啥玩意)

算法

算法本人没啥好说的,自己刷吧,以下是出现过的经典题,一些偏门的我就不写了

  • 排序算法:七种基础算法一定要熟练到手写,各自的特点和复杂度;随机快排和经典快排,复杂度;给一个序列,手写快排一次后的序列
  • 队列和栈:队列和栈区别,使用场景;数组实现队列
  • 找到100亿url中最多出现的k个(!这个题很多公司都问到了,应该是哈希+分文件+堆排序,自己查吧)
  • 如何把取出的数据树形结构化
  • 介绍红黑树,和AVL树的区别
  • 一致性哈希,怎么解决哈希冲突
  • 数组和链表:数组和链表的区别以及优缺点;列表去重;个有序链表合并(!!出现过几次);找出两个数组相等的数,不能用其他数据结构;一个数组中只有两个数出现一次,其他的都出现两次,求这两个数;给定一个数字和数组,找出数组中两个相加等于这个数字的两个数,不能用数据结构;找两个链表的交叉节点
  • 判断树1是树2的子树
  • 二叉树:层级遍历;后序遍历;72个节点,问非叶子节点数量;求任意两节点距离,时间复杂度;判断是否是平衡二叉树,如何调整平衡二叉树
  • 矩阵找最短路径,直接画出来
  • 手写LRU

JDBC & ORM

不太问道的一个区域,能问的也少,枉费我当初学了很久

  • sql注入和防治办法(preparestatement和statement区别,有啥优点)
  • mybatis:如何开启延迟加载、如何分页、mybatis批量查询手写
  • 数据库连接池的实现方式:自己设计连接池需要考虑什么
  • 驱动为什么使用反射而非new(内部存在内部静态代码块,防止加载两次)

spring族

  • 介绍springboot/Spring:不要僵硬的背ioc和aop,虽然主要肯定是说这个,但可以随便扯点别的啊、比如spring是轻量级一站式框架
  • Spring中用到的设计模式:spring如何实现单例模式的
  • spring的隔离级别
  • spring事务写在那一部分(service层),为什么不在controller或者dao层
  • springmvc工作流程
  • 拦截器做啥的,啥时候用
  • spring修改为prototype的方法
  • aop的使用方式,什么时候用jdk动态代理什么时候用cglib(不使用接口时的情况)(别问我,问就是不懂)
  • spring中全局变量如何创建

设计模式

  • 单例模式(!!非常重要!!):手写饿汉和懒汉式、单例保证多线程安全的方式,双重检测单例模式
  • 工厂模式、策略模式、观察者模式、适配器模式(比较常考)

操作系统 & 计算机网络

这部分我都说的不知道,但是还是过了,唉,感谢面试官啊

  • 子网掩码作用
  • 进程调度算法
  • 进程间通信方式
  • TCP和UDP的区别(!!经常考)
  • TCP三握四挥(!!经常考)
  • HTTP(!!经常考):常见状态码、http和https、http请求响应的内容、get和post区别
  • 访问网站的流程和涉及到的协议,对应七层模型(!!经常考)

项目 & 综合题

这方面每个人不一样并且重复概率低,我列举几个有参考价值的

  • 怎么保证写代码出错少
  • 项目中类函数如何声明
  • 项目中印象显著的bug,怎么解决的
  • 说一下微服务,微服务如何管理
  • path和classpath区别
  • eclipse、intellij快捷键和使用技巧
  • 浏览器请求如何保证到达后台而非使用浏览器缓存(请求加随机参数)
  • 设计转账场景(这是我被问到的综合题,扑街)
  • 设计移动支付场景
  • BS和CS
  • 系统卡顿如何查找原因
  • linux中很多waittime链接什么情况

招银网络面试题、考点、知识点总结(Java岗)的更多相关文章

  1. 剑指Offer——CVTE校招笔试题+知识点总结(Java岗)

    剑指Offer(Java岗)--CVTE校招笔试题+知识点总结 2016.9.3 19:00参加CVTE笔试,笔试内容如下: 需要掌握的知识:Linux基本命令.网络协议.数据库.数据结构. 选择题 ...

  2. 还有更惨的吗?字节面经,美团,网易,招银,360全部在HR前一面挂了

    最近一朋友向我吐槽去年的秋招,字节面经,美团,网易,招银,360全部在HR前一面挂了,实在是有点惨.我把他语无伦次的话做了一个整理: 最近真的很暴躁,控制不住自己陷入情绪低落胡思乱想,每天都是在希望失 ...

  3. 2019大厂Java岗面试题全曝光,刷完这1020道,金三银四大厂等你

    2019大厂Java岗面试题全曝光,刷完这1020道,金三银四大厂等你 前言: 本文收集整理了各大厂常见面试题N道,你想要的这里都有 内容涵盖:Java.MyBatis.ZooKeeper.Dubbo ...

  4. 备战金三银四!一线互联网公司java岗面试题整理:Java基础+多线程+集合+JVM合集!

    前言 回首来看2020年,真的是印象中过的最快的一年了,真的是时间过的飞快,还没反应过来年就夸完了,相信大家也已经开始上班了!俗话说新年新气象,马上就要到了一年之中最重要的金三银四,之前一直有粉丝要求 ...

  5. 2018春招-今日头条笔试题-第四题(python)

    题目描述:2018春招-今日头条笔试题5题(后附大佬答案-c++版) #-*- coding:utf-8 -*- class Magic: ''' a:用于存储数组a b:用于存储数组b num:用于 ...

  6. 2018春招-今日头条笔试题-第三题(python)

    题目描述:2018春招-今日头条笔试题5题(后附大佬答案-c++版) 解题思路: 本题的做法最重要的应该是如何拼出‘1234567890’,对于输入表达试获得对应的结果利用python内置函数eval ...

  7. 2018春招-今日头条笔试题-第二题(python)

    题目描述:2018春招-今日头条笔试题5题(后附大佬答案-c++版) 解题思路: 利用深度优先搜索 #-*- coding:utf-8 -*- class DFS: ''' num:用于存储最后执行次 ...

  8. 2018春招-今日头条笔试题-第一题(python)

    题目描述:2018春招-今日头条笔试题5题(后附大佬答案-c++版) 解题思路: 要想得到输入的数字列中存在相隔为k的数,可以将输入的数字加上k,然后判断其在不在输入的数字列中即可. #-*- cod ...

  9. Java最重要的21个技术点和知识点之JAVA集合框架、异常类、IO

    (三)Java最重要的21个技术点和知识点之JAVA集合框架.异常类.IO  写这篇文章的目的是想总结一下自己这么多年JAVA培训的一些心得体会,主要是和一些java基础知识点相关的,所以也希望能分享 ...

随机推荐

  1. [POJ1226]Substrings(后缀数组)

    传送门 给定 n 个字符串,求出现或反转后出现在每个字符串中的最长子串. 算法分析: 这题不同的地方在于要判断是否在反转后的字符串中出现.其实这并没有加大题目的难度. 只需要先将每个字符串都反过来写一 ...

  2. Sencha Touch 2中如何动态添加button

    原理很简单无非就是在一个容器上面选中id,用容器的add方法将button循环加入. 现在我们来试一下 1.先定义一个Container组件用,以后在里面添加button ? 1 2 xtype:'c ...

  3. [Cogs727] [网络流24题#2] 太空飞行计划 [网络流,最小割]

    建图:源点—(w[i])—>实验—(∞)—>仪器—(cost[i])—>汇点, 如果该实验造成收益,则仪器到汇点的边在最小割中, 如果该实验造成损失,则源点到实验的边在最小割中, 故 ...

  4. asciiflow

    http://asciiflow.com/ https://maxiang.io/# http://www.jianshu.com/p/19432b5e3c60

  5. Android LaunchAnyWhere (Google Bug 7699048)漏洞具体解释及防御措施

    開始 近日,Google修复一个组件安全的漏洞LaunchAnyWhere(Google Bug 7699048). 这个漏洞属于Intend Based提取漏洞,攻击者利用这个漏洞,能够突破了应用间 ...

  6. PKU 2774 Long Long Message (后缀数组练习模板题)

    题意:给你两个字符串.求最长公共字串的长度. by:罗穗骞模板 #include <iostream> #include <stdio.h> #include <stri ...

  7. Oracle推断值为非数字

    select * from product_info t where t.contract_detailid is not null and length(translate(t.contract_d ...

  8. nyoj 95

     #include<stdio.h> #include<queue> #include<algorithm> using namespace std; stru ...

  9. AFNetworking的详细解析

    AFNetworking serializer 分析 AFNetworkResponse.png 1. AFHTTPRequestOperationManager *manager = [AFHTTP ...

  10. 多工程联编的Pods如何设置

    多工程联编的Pods如何设置 (2014-07-17 13:57:10) 转载▼ 标签: 联编 多工程 分类: iOS开发 如今,CocoaPods使用越来越多,几乎每个项目都会使用到.有时候我们的项 ...