自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(13)
  • 收藏
  • 关注

原创 Java8新特性-Lambda表达式

Java8新特性-Lambda表达式

2022-11-12 11:55:17 139 1

原创 Java8新特性-StreamAPI

Java8新特性-StreamAPI

2022-11-12 11:53:29 226

原创 【操作系统】通俗读懂进程

公众号「码农小奎」操作系统—进程篇所谓进程,第一能想到的就是应用程序。打开浏览器,这是一个进程,挂上QQ,这也是一个进程。很明显,这是能真实感受到的。除了这些能看到的以外,在数据层面上,进程到底是什么形态?为什么需要进程?进程是怎样运行于计算机之上的?在windows中,你肯定用过任务管理器,那里展现的就是一个个进程。在Linux终端下输入ps命令也可以查看进程,这里所显示的都是进程的具体数据,例如进程ID、进程名、占用CPU百分比、进程创建和运行时间等。依靠这种数据结构综合起来就是一个进程.

2021-10-14 20:13:24 371

原创 【操作系统】浅谈OS内核

公众号「码农小奎」操作系统—内核篇实际上,计算机体系在经过几十年的迭代更新之后,操作系统的内核离我们已经很遥远了。无论是对普通用户还是上层软件开发者来说,内核之中有什么已经不太重要了,而用户更关心的是操作系统所提供的服务。所以,站在上层用户和开发者的视角,操作系统内核就是一个巨大的黑盒,盒子里有什么,它是怎么实现的,并不太关心。但作为开发者,如果想要进一步提升技术水平与理解,还是需要了解一些黑盒中的秘密的。内核功能想要知道内核里面有什么,我们可以先搞明白内核是干什么的,也就是它的功能。简.

2021-10-14 20:09:41 1652

原创 【前缀树】写一个敏感词过滤器

1.什么是敏感词过滤这其实是一个很常见的功能,随处可见以至于你可能都没关注过,基本上在有评论的地方都会有它的身影。举例来说,你打游戏和别人对喷的时候,是不是一些脏话发不出去哈哈,这些词汇会用***代替。再比如,一些话题和视频下评论政治敏感词、色情低俗等等都是需要过滤的。那这种过滤是怎么实现的呢?那就不得不聊一聊一种数据结构了,那就是前缀树。2.前缀树前缀树是树的一种扩展类型,其实结构本身还是挺简单的,难点在于对这个结构制定的算法。它的结构是按照敏感词来构建的,假设abc,be,bf这三个词是

2021-10-09 10:28:20 284

原创 【代码之路】我和代码的这两年,一路风雨,终见彩虹

曾经沧海,又到沙漠,四千里外关河骨相空谈,肠轮自转,回头二十年过前言临近放假,心猿意马。坐在空荡的教室,无心敲代码。过去的两年在我脑海中浮现,突想记录一下这两年的经历,也算是给将来的自己留下回忆。正文开端告别水乡,飘向西北。我是2019年入学,普通双非的计科专业。大一上给我的记忆并不多,想来原因在于一是初来大学,懵懵懂懂,每天似乎匆匆忙忙,但其实什么也没干。二是自己性格使然,不喜热闹,所以没有参加任何部门社团什么的,大一上是在没有社交,沉迷游戏的情况下度过的。第一学期的课还是很轻松的,和

2021-10-03 10:57:18 1168

原创 PC寄存器概述

程序计数寄存器(Program Counter Register)这里并非广义上所指的物理寄存器,或许将其翻译为PC计数器会更加贴切,并且也不容易引起一些不必要的误会。JVM中的PC寄存器是对物理PC寄存器的一种抽象模拟。作用:PC寄存器用来存储指向下一条指令的地址,也即将要执行的指令代码。由执行引擎读取下一条指令。特性:它是一块很小的内存空间,几乎可以忽略不记。也是运行速度最快的存储区域 在JVM规范中,每个线程都有它自己的程序计数器,是线程私有的,生命周期与线程的.

2021-04-24 16:50:41 11006

原创 JVM运行时数据区概述

JVM运行时数据区大致分类:方法区(Method Area) 堆区(heap) 程序计数器(Program Counter Register) 虚拟机栈(VM Stack) 本地方法栈(NM Stack)运行时数据区在JVM中的位置:运行时数据区具体:Java虚拟机定义了若干种程序运行期间会使用到的运行时数据区,其中有一些会随着虚拟机启动而创建,随着虚拟机退出而销毁有些则是与线程一一对应的,这些与线程对应的数据区域会随着线程开始和结束而创建和销毁????灰色的为

2021-04-24 15:41:09 56

原创 双亲委派机制

概述:Java虚拟机对class文件采用的是按需加载的方式,也就是说当需要使用该类时才会讲它的class文件加载到内存生成class对象。而且加载某个类的class文件时,Java虚拟机采用的是双亲委派模式,即把请求交由父类处理,它是一种任务委派模式。工作原理:如果一个类加载器收到了类加载请求,它并不会自己先去加载,而是把这个请求委托给父类的加载器去执行 如果父类加载器还存在其父类加载器,则进一步向上委托,依次递归,请求最终将到达顶层的启动类加载器 如果父类加载器可以完成类加载任务,就返

2021-04-24 15:40:45 128 1

原创 类加载器的分类

JVM类的加载器分为: 引导类加载器(Bootstrap Class Loader) 自定义类加载器(User Defined Class Loader),扩展类加载器和系统类加载器属于自定义类加载器一:引导类加载器(Bootstrap Class Loader)使用c/c++编写,嵌套在JVM内部 用于加载java核心类库,提供JVM自身需要的类(JAVA_HOME/jre/lib/rt.jar、resources.jar、sun....

2021-04-24 13:13:47 94

原创 JVM类的加载过程

1.加载(loading) 1)通过一个类的全限定名获取此类的二进制字节流 2)将这个字节流所代表的静态存储结构转化为方法区的运行时数据结构(jdk7及以前方法区为永久代,jdk8为元空间) 3)在内存中生成一个代表这个类的java.lang.Class对象,作为方法区这个类的各种数据的访问入口 补充:加载.class文件的方式从本地系统中直接加载 通过网络获取,典型场景:Web Applet 从zip压缩包中读取,成为日后jar、war格式的基础 运行时计算生成,使...

2021-04-22 17:20:45 58

原创 PreparedStatement相比Statement的好处

PreparedStatement的好处:1.PreparedStatement解决了Statement的拼串、SQL注入问题2.PreparedStatement可以操作Blob数据,而Statement做不到3.在批量操作时,PreparedStatement效率更高

2021-04-02 17:50:02 341

原创 ORM思想

对象关系映射:ORM(Object Relational Mapping)Object:对象,即面向对象编程中类的实例Relational:关系,数据库中的表Mapping:映射通俗的讲就是将数据库中的表与面向对象编程中的对象进行映射具体在java中的实现为:1.一个数据表对应一个java类2.表中的一条记录对应java中的一个对象3.表中的一个字段对应java类的一个属性好处:方便将对数据库的查询结果解析到编程中,也方便了数据的封装和对数据的再处理。...

2021-04-02 17:48:44 66

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除