面试需要掌握的知识点

  • 计算机操作系统
    内存管理、多线程、解决死锁,通信,银行家算法,生产者消费者
  • 计算机网络
    HTTP(get post 状态码)、UTP与TCP(以及应用场景)、浏览器输入一个网址的一套流程
  • 算法
    常见数据结构,链表,树,队列,堆,栈
    排序算法,冒泡、快排
  • 哈希思想
再提一下iOS 基础,以下是我总结的,也是我面试中基本上都会有问到的

RunLoop 原理及应用场景
Runtime 原理及应用场景
类别的实现原理及应用场景
内存管理底层实现
循环引用的原理处理
响应链
iOS如何保持界面流畅
iOS多线程
GCD、NSOperation、NSTread、同步异步、串行并行队列

Java基础

Java语言的关键点

掌握静态方法和属性
重视接口
学好集合框架
例外捕捉
多线程需要理解机理(多线程原理和多线程安全)
了解网络编程

不需要精通,掌握以下知识点,面试基本没有问题。
这里没有列举大数据方面的知识点
若是有高并发,大数据,程序部署、项目架构的工作经验,如虎添翼

Java基础编程
Java基础(Java语法、面向对象、常见API、集合框架)
JavaAPI(JavaIO、多线程、网络编程、反射注解)
数据库开发编程
SQL基础(SQL基础、增删改查、多表查询、嵌套查询、SQL优化)
JDBC编程(JDBC原理、JDBC连接库、JDBC API)
JDBC高级(数据库连接池、存储过程、触发器、ORM思想)
DHTML编程
HTML语言(HTML标签、表单标签、Div&Css)
JavaScript(Js语法、Js对象)
DOM编程(DOM原理、DOM元素、DOM编程)
JavaWeb编程
Servlet开发(XML&Tomcat、HTTP协议、Servlet API、Filter、Listener)
JSP开发(JSP语法和标签、自定义标签、EL&JSTL、MVC设计模式)
AJAX开发(AJAX原理、请求响应处理、AJAX开发库、JQuery&DWR)
JavaEE企业开发编程
Hibernate(检索映射技术、多表查询、缓存技术、性能优化)
Mybatis(映射技术、多表查询、缓存技术、性能优化)
Struts2(体系架构、各个组件、标签库、扩展)
SpringMVC(架构、原理、注解、SSM集成)
Spring(IOC&AOP、DataSource、事务、SSH集成)
Spring Boot
Spring Cloud
Docker
常用的框架
Log4j、Ant、LoadRunner、XFire、Lucene、Memcache、SVN、Maven、JMail等等

面试不需要秘籍,不过面试作为一种“谈判”,需要技巧和应对策略。面试之前的心理准备,和基础准备,材料准备,都是必备的,如果只对某个行业和领域进行面试,久了也不需要准备太多,随机应对就是了,因为每一次面试都可能遭遇不同的状况,所以面试做准备并不是万能的,面试没有什么通用的法则,最大的法则就是自己够硬,够行,提高自身的无可替代性,提高自身的人力竞争力,在专业水平和综合能力上优越于其他选手,特别的背景和丰富的经历绝对是加分的项目,谈判的方法和方式,对问题的切入和对问题的应对这需要靠平时的素质来决定的。以我多年对面试的经历总结,想要成功面试,就要多提升自己的能力和背景,除了在知名公司的镀金,和项目经验,和操盘能力上提升,还有实质的专业水平和理论水平,对于互联网行业来说,技术能力和理论能力,项目解决能力,项目经验,团队经验,教育背景,从业背景,这些都是对面试分数有关的地方。记住一句话,要想别人觉得你行,首先自己要够硬!

你可能感兴趣的:(面试需要掌握的知识点)