Java面试题小结

Java面试题小结:

对面向对象的理解:

OOP是面向对象编程,特征分别是封装、继承、多态、抽象。
封装:封装是指将对象信息状态通过访问权限修饰符隐藏在对象内部,不允许外部程序直接访问,对外提供的get或set方法访问。(作用:简化开发,提升开发效率)
继承:子类继承了父类所有的成员方法和属性,并且可以拥有自己特性。继承解决了代码的重用问题。
多态:多态存在的三个条件 1.继承2.重写3.父类引用指向子类对象
多态的实现方式1.接口实现,继承父类方法重写,同一个类中进行重载

重载与重写的:

他们都是实现多态的方式。

  • 重载:方法名相同,参数不同(个数/类型)
    在调用方法时通过传递给它们的不同参数个数和参数类型来决定具体使用哪个方法, 这就是多态性,存在于父类和子类、同类中。
  • 重写:
  1. 参数列表必须完全与被重写的方法相同
  2. 返回的类型必须一直与被重写的方法的返回类型相同
  3. 访问修饰符的限制一定要大于被重写方法的访问修饰符
  4. 重写方法一定不能抛出新的检查异常或者比被重写方法申明更加宽泛的检查型异常
  5. 存在于父类和子类之间,方法被定义为final不能被重写。

(JDBC)事务的特性:

概念:事务是指一组操作,要么都执行成功,要么都执行失败。

  1. 原子性:一组操作,要么都执行成功,要么都执行失败。
  2. 隔离性:在所有操作未完成之前,其他回话是不能看到中间过程的。
  3. 一致性:事物发生和发生后的总金额依然匹配。
  4. 持久性:事务产生的影响是不能撤销的。

事务处理的核心意义:
将一系列操作放在一个事务下进行管理,正常情况全部执行,如果有异常出现,则回滚事务。

简述TCP UDP IP:

在这里插入图片描述
在这里插入图片描述

  1. I P是T C P / I P协议族中最为核心的协议。所有的 T C P、U D P、I C M P及I G M P数据都以I P数据 报格式传输 ;IP数据报传送 服务 具有不可靠性、无连接性。
  2. UDP是无连接的、面向报文的一对一、一对多、多对一、多对多的交互通信的不可靠传输协议。
  3. TCP是一种面向连接的、可靠的字节流传输协议。

对三次握手四次挥手的理解:

在这里插入图片描述
三次握手的原因

第三次握手是为了防止失效的连接请求到达服务器,让服务器错误打开连接。
客户端发送的连接请求如果在网络中滞留,那么就会隔很长一段时间才能收到服务器端发回的连接确认。客户端等待一个超时重传时间之后,就会重新请求连接。但是这个滞留的连接请求最后还是会到达服务器,如果不进行三次握手,那么服务器就会打开两个连接。如果有第三次握手,客户端会忽略服务器之后发送的对滞留连接请求的连接确认,不进行第三次握手,因此就不会再次打开连接。
在这里插入图片描述
四次挥手的原因
客户端发送了 FIN 连接释放报文之后,服务器收到了这个报文,就进入了 CLOSE-WAIT 状态。这个状态是为了让服务器端发送还未传送完毕的数据,传送完毕之后,服务器会发送 FIN 连接释放报文。

SpringMVC的流程:

在这里插入图片描述

  1. 用户向服务端发送一次请求,这个请求会先到前端控制器DispatcherServlet(也叫中央控制器)。
  2. DispatcherServlet接收到请求后会调用HandlerMapping处理器映射器。由此得知,该请求该由哪个Controller来处理(并未调用Controller,只是得知)
  3. DispatcherServlet调用HandlerAdapter处理器适配器,告诉处理器适配器应该要去执行哪个Controller
  4. HandlerAdapter处理器适配器去执行Controller并得到ModelAndView(数据和视图),并层层返回给DispatcherServlet
  5. DispatcherServlet将ModelAndView交给ViewReslover视图解析器解析,然后返回真正的视图。
  6. DispatcherServlet将模型数据填充到视图中
  7. DispatcherServlet将结果响应给用户

对Mybatis理解

在这里插入图片描述

参考及引用源自:

  1. TCP、UDP、IP详解:https://blog.csdn.net/zpoison/article/details/86528327
  2. springmvc工作流程:https://www.cnblogs.com/hamawep789/p/10840774.html
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章