美团架构师深⼊讲解Java开发!美的java开发⾯试
前⾔
今天中午收到我司安全部发了⼀封邮件:Jackson存在安全漏洞。查了⼀下,这件事并不算很新鲜了(已经过了5天的样⼦),本⽂来聊聊吧。
说起来还蛮戏剧化:阿⾥云向Jackson官⽅提交了⼀个Jackson序列化安全漏洞。众所周知,在国内关于JSON库使⽤有两⼤主要阵营:国际著名的Jackson库和国内阿⾥巴巴出品的Fastjson。
同样的功能定位,不存在竞争想想也觉得不可能嘛。所以当我看到这个漏洞竟是阿⾥云上报的,就觉得这关系还蛮微妙呢,默默的腹⿊了3秒钟,哈哈。
附:FasterXML/jackson-databind是⼀个简单基于Java应⽤库,Jackson可以轻松的将Java对象转换成json对象和xml⽂档,同样也可以将json、xml转换成Java对象。Jackson是美国FasterXML公司的⼀款适⽤于Java的数据处理⼯具。jackson-databind是其中的⼀个具有数据绑定功能的组件。
Java基础
1Java语⾔的三⼤特性
2.Java语⾔主要特性
3. JDK和JRE有什么区别
4.Java基本数据类型及其封装类
5.如果main⽅法被声明为private会怎样?
6.说明- -下public static void main(String argsQ])这段声明⾥每个关键字的作⽤
7.==与equals的区别
8.Object有哪些公⽤⽅法
9.为什么Java⾥没有全局变量?
10.while循环和do循环有什么不同?
11.char型变量中能不能存储⼀个中⽂汉字?为什么?
12.public, private, protected的区别, 继承⽅法与访问权限
自己做一个小程序需要多少钱13.float f=3.4;是否正确?
14.shorts1 = 1;s1 = s1 + 1;有错吗? shorts1 = 1;s1 += 1;有错吗
15.8u和&:&的区别?
16.IntegerCache
17.Locale类是什么?
18Java中final. finally. finalize的区别与⽤法
19.hashCode0和equals0的区别
20.深拷贝和浅拷贝的区别是什么?
21Java中操作字符串都有哪些类?它们之间有什么区别?
22.String str= "a"与String str=new String(“a”)-样吗?
23.抽象类能使⽤final 修饰吗?
24.static关键字5连问
25.重载(Overload) 和重写(Override) 的区别。重载的⽅法能否根据返回类型进⾏区分?
26.Java的四种引⽤
27.Java中Comparator与Comparable有什么不同?
28. Java序列化,反序列化?
29.什么情况需要Java序列化?
30.序列化的实现?
31.如果某些数据不想序列化,如何处理?
IO&NIO
1.什么是I0流?
2java中有⼏种类型的流?
3.字节流和字符流哪个好?怎么选择?
4.读取数据量⼤的⽂件时,速度会很慢,如何选择流?
5.1O模型有⼏种?
6.阻塞1O (blocking 10)
7.⾮阻塞I/O (nonblocking 10)
mysql面试题目及答案8.I/O多路复⽤模型(I0 multiplexing)
9.信号驱动I/O模型
10.异步/O(asynchronous 10)
11.NIO与10的区别?
12.NIO和IO适⽤场景
eigenvector13.NIO核⼼组件
14.什么是channel
15.Java NIO中最常⽤的通道实现?
16.Buffer是什么?
多线程⾯试题
1.什么是进程?
2.什么是线程?
3.线程的实现⽅式?
4.Thread类中的start0和run0⽅法有什么区别?
5.线程NEW状态
6.线程RUNNABLE状态
7.线程的RUNNING状态
8.线程的BLOCKED状态
9.线程的TERMINATED状态
10.线程状态转化图
11.i——与System.out.printIn0的异常
12.如何知道代码段被哪个线程调⽤?
13.线程活动状态?
14.sleep0⽅法
15.如何优雅的设置睡民时间?
16.停⽌线程
常见的设计模式有哪些
17.interrupted和isInterrupted
18.yield
19.线程的优先级
20.优先级继承特性
21.谁跑的更快?
22.线程种类
23.守护线程的特点
24.Java中典型的守护线程
25.如何设置守护线程
defend名词和形容词
25Java虚拟机退出时Daemon线程中的finally块⼀定会执⾏?
26.设置线程上下⽂类加载器
27.join
28.什么是synchronized?
29.synchronized包括哪两个jvm重要的指令?
30.synchronized关键字⽤法?
31.synchronized锁的是什么?
32.Java对象头
还有很多,这⾥就不⼀⼀例举了
JVM
1JDK. JRE、 JVM关系?
2.启动程序如何查看加载了哪些类,以及加载顺序? ’
3. class字节码⽂件10个主要组成部分?
4.画⼀下jvm内存结构图?
5.程序计数器
6Java虚拟机栈
7.本地⽅法栈
8Java堆
9.⽅法区
10.运⾏时常量池?
11.什么时候抛出StackOverflowError?
12.Java7和Java8在内存模型上有什么区别?
13.程序员最关注的两个内存区域?
14.直接内存是什么?
15.除了哪个区域外,虚拟机内存其他运⾏时区域都会发⽣OutOfMeoryError?
16.什么情况下会出现堆内存溢出?
17如何实现⼀个堆内存溢出?
18.空间什么情况下会抛出OutOfMemoryError?
19.如何实现StrackOverflowError?
20.如何设置直接内存容量?
21.Java堆内存组成?
param注解什么意思22. Edem : from : to默认⽐例是?
23.垃圾标记阶段?
24.引⽤计数法?
25.根搜索算法?
26.JVM中三种常见的垃圾收集算法?
27.标记-清除算法?
28.复制算法?
29.标记-整理算法?
30.分代收集算法?
31.垃圾收集器?
32.Stop The World?
最后
⼀次偶然,从朋友那⾥得到⼀份“java⾼分⾯试指南”,⾥⾯涵盖了25个分类的⾯试题以及详细的解析:JavaOOP、Java集合/泛型、Java中的IO与NIO、Java反射、Java序列化、Java注解、多线程&并发、JVM、Mysql、Redis、Memcached、MongoDB、Spring、Spring Boot、Spring Cloud、RabbitMQ、
Dubbo 、MyBatis 、ZooKeeper 、数据结构、算法、Elasticsearch 、Kafka 、微服务、Linux。
这不,马上就要到招聘季了,很多朋友⼜开始准备“⾦三银四”的春招啦,那我想这份“java⾼分⾯试指南”应该起到不⼩的作⽤,所以今天想给⼤家分享⼀下。

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。