第一次项目总结

    技术2025-10-22  11

    昨天进行的项目答辩,总的来说很不理想,相对于2019级的来说,确实写得不咋地,学长们也直接说出来了很多基础知识点掌握的不扎实,在家也有很大的原因,针对昨天学长提问的内容,和自己觉得不足的地方进行一次复盘。

    封装,继承,多态 多态的三个必要条件:继承,方法重写,父类引用指向子类对象,多态提供了一种编程架构,使得程序更具有灵活性。TCP协议的三次握手,四次挥手 所谓三次握手指的是,客户端与服务器建立连接的一个过程,相反四次挥手指的是释放连接的过程。 总的来说是有六个报文标识,分别是SYN(建立连接),ACK(确认),FIN(释放连接),PSH(传送),URG(紧急),RST(重置)

    握手: 1.客户端向服务器发送SYN标识报文,示意建立连接。 2.服务器收到信息后返回一个具有ACK和SYN标识的报文,示意确认收到,并请求向客户端建立连接。 3.客户端收到含有ACK和SYN标识报文后,说明服务器已收到自己的建立请求,回复一个ACK报文,即完成三次握手,建立连接,可传输数据。 挥手: 1.客户端向服务器发送FIN标识报文,表示自己要断开连接,进入半连接状态,停止客户端向服务器发送的数据(不包括报文标识数据)。 2.服务器收到FIN标识报文,回复一个ACK报文,表示已收到,并且准备停止对客户端发送信息。 3.服务器完成剩余数据传输后处理后,再次向客户端发送FIN标识报文,服务器进入半连接状态。 4.客户端发送一个ACK标识报文,表示客户端已经知道服务器准备好断开连接,并进入等待状态,设定计时器,若超过2MSL(Maximum Segment Lifetime最大生命周期)表示服务器已经收到,则连接断开,挥手完成,若在2MLS时间内再次收到服务器的FIN请求表示服务器未收到ACK报文,则客户端再次发送,重复上述过程。

    Tip:因为建立连接时,服务器没有任何数据发送,所有直接返回ACK和SYN标识,但是挥手的时候可能服务器还有未传输完成的数据,就要分两次发送ACK和FIN标识报文,所以有三次握手,四次挥手。 详细介绍链接:点这里跳转

    3.多线程 多线程方面薄弱,只了解到简单的java多线程使用,在基础方面还需要加强,比如Runnable和Callable的细微区别,多线程也是学习分布式的基础环节,所以后续过程中对多线程的了解。 4.数据库 对于sql语句的书写不是特别熟练,java中一些数据库驱动只是为了写项目而去学,一些细节还是没有掌握。

    在暑假的学习过程中,加强对算法的了解,包括线段树等相关结构的算法,对java基础更深入的了解,包括底层原理,尽量深入。

    Processed: 0.013, SQL: 9