开始操作系统的学习吧!

阅读全文 »

作为一个Java后端攻城狮,jvm是必须要懂的知识点。我主要是看书+看视频结合起来学习,书看的是『深入理解java虚拟机第三版』,视频看的是宋红康的jvm教程。
宋红康jvm教程

接下来就开始漫长的jvm学习之旅吧(◕ᴗ◕✿)

阅读全文 »

网络编程学习

NIO基础

在JavaSE的学习中,了解到如何使用IO进行数据传输,Java IO是阻塞的,如果在一次读写数据调用时数据还没有准备好,或者目前不可写,那么读写操作就会被阻塞直到数据准备好或目标可写为止。Java NIO则是非阻塞的,每一次数据读写调用都会立即返回,并将目前可读(或可写)的内容写入缓冲区或者从缓冲区中输出,即使当前没有可用数据,调用仍然会立即返回并且不对缓冲区做任何操作。

NIO框架是在JDK1.4推出的,它的出现就是为了解决传统IO的不足。

阅读全文 »

并发编程学习

一、认识多线程

在我们的操作系统之上,可以同时运行很多个进程,并且每个进程之间相互隔离互不干扰。我们的CPU会通过时间片轮转算法,为每一个进程分配时间片,并在时间片使用结束后切换下一个进程继续执行,通过这种方式来实现宏观上的多个程序同时运行。

由于每个进程都有一个自己的内存空间,进程之间的通信就变得非常麻烦(比如要共享某些数据)而且执行不同进程会产生上下文切换,非常耗时,那么有没有一种更好地方案呢?

后来,线程横空出世,一个进程可以有多个线程,线程是程序执行中一个单一的顺序控制流程,现在线程才是程序执行流的最小单元,各个线程之间共享程序的内存空间(也就是所在进程的内存空间),上下文切换速度也高于进程。

阅读全文 »

设计模式学习

一、面向对象设计原则(7原则)

我们在进行软件开发时,不仅需要将基本的业务给完成,还要考虑整个项目的可维护性和可复用性,我们开发的项目不单单需要我们自己来维护,也需要其他的开发者一起来进行共同维护,因此我们在编写代码时,应该尽可能的规范。如果我们在编写代码时不注重这些问题,随着项目的不断扩大,整体结构只会越来越糟。为了避免这种情况的发生,我们就可以使用设计模式

阅读全文 »

Java新特性介绍

Java 8是Oracle 公司于 2014 年 3 月 18 日发布的,距离今天已经过了近十年的时间了,Java并没有就此止步,而是继续不断发展壮大,几乎每隔6个月,就会冒出一个新版本,最新的版本已经快要迭代到Java 20了,与Java 8相差了足足十来个版本,但是由于Java 8的稳定和生态完善(目前仍是LTS长期维护版本),依然有很多公司在坚持使用Java 8,不过随着SpringBoot 3.0的到来,现在强制要求使用Java 17版本(同样也是LTS长期维护版本),下一个Java版本的时代,或许已经临近了。

阅读全文 »

谷粒商城学习总结

第一遍学习完结撒花,第一遍主要是熟悉整个项目背景。

第二遍打算结合视频独立完成,熟悉项目的整体设计、优秀业务代码的编写,并输出学习笔记。

阅读全文 »

尚医通学习总结

尚医通项目完结撒花!过了一遍项目整体功能

阅读全文 »