- 博客(26)
- 收藏
- 关注
原创 4000字浅谈Java网络编程
服务端是通过java.net包下的ServerSocket类来实现的。为了让全球所有上网设备都能互通互联,需要指定一套统一的标准。
2024-11-14 23:11:22
1149
原创 Java线程池浅谈(创建线程池及线程池任务处理)
进程是什么?正在运行的程序(软件)就是一个独立的进程。线程是属于进程的,一个进程中可以同时运行很多个线程。进程中的多个线程其实是并发和并发执行的。并发的含义进程中的线程是CPU负责调度执行的,但CPU能同时处理线程的数量有限,为了保证全部线程都能往前执行,CPU会轮询为系统的每个线程服务,由于CPU切换的速度很快,给我们的感觉这些线程在同时执行,这就是并发。
2024-11-13 21:16:55
738
原创 6000字弄清Java的多线程如何创建及使用线程同步解决线程安全问题。
线程休眠可以让我们的程序慢下来,比方说有一个线程我们故意希望它晚一点执行,或者模拟延迟都可以使用sleep方法。我们可以看到余额出现了-10万,线程安全问题已经出现了。synchronized(同步锁){访问共享资源的核心代码。
2024-11-13 13:41:32
1197
原创 一万五千字究极详解Java开发File、IO流、IO框架全流程
标准ASCII编码→码点→二进制(使用一个字节存储)标准ADCII字符集ASCII:美国信息交换标准代码,包含了英文、符号等标准ASCII使用1个字节存储一个字符,首位是0,因此,总共可以表示128个字符,对美国佬来说完全够用。GBK(汉字内码扩展规范,国标)汉字编码字符集,包含了两万多个汉字等字符,GBK中一个中文字符编码成两个字节的形式存储GBK兼容了ASCII字符集那这个时候就出现了一个问题,如果有人问“我a你”,这个怎么存储呢?
2024-11-07 02:27:05
1094
原创 一篇文章速通Java开发Stream流(流水线开发附斗地主小游戏综合案例)
有filiter过滤、sorted排序、按sorted照指定规则排序、limit获取前几个元素、skip跳过前几个元素、distinct去除流中重复的元素、map对元素进行加工,并返回对应的新流、concat合并a和b两个流为一个流...每次运行的结果都是随机的,默认是令狐紫为地主,多三张牌,自动发牌,自动按大小排序。这一部分讲的就是Stream的中间方法,对于流水线上数据进行处理的部分。终结方法指的是调用完成后,不会返回新Stream了,没法继续使用流了。,功能强大,性能高效,
2024-11-05 22:39:04
864
原创 6000字粗讲让你彻底明白Java集合框架的使用逻辑(Collection、List、Set、Map)
Map集合也被叫做“键值对”集合,格式:{key1=value1,key2=value2,key3=value3...}Map集合的所有键是不允许重复的,但值可以重复,键和值是一一对应的,每一个键只能找到自己对应的值。Map集合在什么业务场景下使用?比如说购物车场景{商品1=2,商品2=3,商品3=2,商品4=3}需要存储一一对应的数据时,就可以考虑使用Map集合来做。Map集合的体系MapTreeMapMap集合体系的特点。
2024-11-05 16:42:26
1005
原创 两千字搞懂Java中的异常类型并精通异常处理方案
Java无法为这个世界上全部的问题都提供异常类来表示,如果企业自己的某种问题(比如发现你这个用户不是VIP),想通过异常来表示,以便用异常来管理该问题,那就需要自己来定义异常类了。那自定义异常肯定需要认爸爸,也就是继承RuntimeException运行时异常,或继承编译时异常Exception。定义一个异常类继承RuntimeException。重写构造器。通过throw new异常类(xxx)来创建异常对象并抛出。特点:编译阶段不报错,运行时才可能出现!提醒不属于激进型。
2024-11-03 16:31:09
1351
原创 2000字搞懂Java中Lambda+方法引用简化代码(开发代码量秒缩十倍)
此函数类似于数学中的函数(强调做什么),只需要输入的数据一致,返回的结果也是一致的。数学中的函数实例:2x+1Java中的函数(Lambda表达式):(x)->2x+1切记,Java中的函数和C语言中的方法是有区别的,这是两个概念,Java中的函数是Lambda表达式。函数式编程解决了什么问题?JDK8开始新增的一种语法形式,它表示函数。使用Lambda函数替代了某些匿名类对象,从而让代码更简洁,可读性更好。//Lambda格式(被重写方法的形参列表)->{被重写方法的方法体代码。
2024-11-02 15:19:34
690
原创 3000字帮你彻底搞懂Java抽象类与接口的区别(含JDK8接口新增三种方法与丰富案例)
Java提供了一个关键字interface定义成接口。JDK8之前接口只能在内部写成员变量(常量)和成员方法(抽象方法)注意:接口不能创建对象。接口是用来被类实现(implements)的,实现接口的类称为实现类,一个类可以同时实现多个接口。(接口可以理解为干爹)
2024-11-01 02:22:58
704
原创 【03】手把手教你0基础部署SpringCloud微服务商城教学-Docker前置篇(附Linux虚拟机配置调试及Docker安装全流程)
首先我们第一次看见这个东西,第一步就是需要知道它到底是用来干什么的?简单来说,Docker就是一个快速构建、运行、管理应用的工具,也可以说是运维工具。而且这个东西也能提高我们的开发效率。传统的部署方式需要非常繁琐复杂的下载安装和语法,但是Docker只需一键操作。但是我们作为后端开发人员,只需要掌握Docker的基本用法,就能满足工作中的需求了。
2024-10-12 15:13:57
1103
6
原创 【02】手把手教你0基础部署SpringCloud微服务商城教学-Mybatis篇(下)
如图我的mySQL是在这两个里面分别有一个,但是包括我们在系统服务等功能里去寻找定位的时候,全部都是定位到Program Files下的mySQL,而最逆天的就是这个文件目录下的MySQL是没有my.ini的,无论是MySQL的根目录还是bin目录全都没有,这个时候你就要注意了。但是方便也带来了一个问题,就是我们数据库表中关于status的定义还是INT类型。枚举是可以直接用==来进行比较的,这样我们代码中就不会有莫名其妙的一堆1和0,1和2进行比较了,而是一堆字段进行比较,我们代码的可读性就变好了。
2024-10-11 23:24:11
1513
2
原创 【01】手把手教你0基础部署SpringCloud微服务商城教学-Mybatis篇(上)
需求:将id在指定范围内的用户(例如1,2,4)的余额扣减指定值。1.先编写一个测试2.根据给定的查询条件(wrapper)更新用户余额。具体功能如下:使用@Param("ew")标注的QueryWrapper<User>类型参数wrapper来指定需要更新余额的用户条件。使用@Param("amount")标注的int类型参数amount来表示需要更新的金额数。函数执行更新操作,但未明确说明具体的更新逻辑(如是增加还是减少)。3.拼接。
2024-10-10 14:17:15
1634
4
原创 【11】纯血鸿蒙HarmonyOS NEXT星河版开发0基础学习笔记-模块化语法与自定义组件
由框架直接提供的称为系统组件,由开发者定义的称为自定义组件。@Component//状态变量build() {//描述UIColumn(){Text('我是一个自定义组件')Button('我是按钮')@Entry@Componentbuild() {Column(){比如说我们在一个界面上划分为上中下三部分,如头部、身体和腿,我们就可以定义三个组件来分别表示。@Component//状态变量build() {//描述UIColumn(){Text('我是一个自定义组件')
2024-10-06 10:07:25
3235
7
原创 【10】纯血鸿蒙HarmonyOS NEXT星河版开发0基础学习笔记-泛型基础全解(泛型函数、泛型接口、泛型类)及参数、接口补充
剩余参数的语法,我们可以将函数或方法中一个不定数量的参数表示为一个数组。
2024-10-03 18:35:29
2458
11
原创 计算机网络期末复习真题(附真题答案)
本文是笔者在大三学习计网时整理的笔记,哈理工的期末试题范围基本就在此范畴内,就算真题有所更改,也仅为很基础的更改数值,大多跑不出这些题,本文包含简答和计算等大题,简答的内容也可能会用于选择填空中,通读后大家可以说期末九成无忧高分保过,评论区扣6期末90+,不扣6也祝大家考试顺利,生活美满。本文所提的页码数是为谢希仁编著电子工业社出版的《计算机网络(第八版)》,我印象中和第七版的差别不大,有出入也基本只是三页以内。PART.1·概述-Overview1.三大类网络分别为?P1。
2024-10-03 08:00:00
2081
1
原创 【09】纯血鸿蒙HarmonyOS NEXT星河版开发0基础学习笔记-Class类基础全解(属性、方法、继承复用、判断)
类中可以定义方法,并且在内部编写逻辑。class 类名{方法名(参数...):返回值类型{//逻辑//可以通过this获取实例对象//定义方法console.log(`你好${name},我是:${this.name}`)const p:Person = new Person('笨猪河马')//方法调用p.sayHi('可爱的荷花')①简介:静态属性和静态方法不是给我们实例化对象添加的,是给类添加的,比如定义一个数字工具类中会有π=3.14,e=2.71class 类{
2024-10-02 17:22:57
3461
3
原创 【08】纯血鸿蒙HarmonyOS NEXT星河版开发0基础学习笔记-Scroll容器与Tabs组件
TabBar在底部,一般会显示图形和文字,甚至有一些特殊logo@Entry@Component@BuilderColumn(){Image(img).width(30)build() {Text('购物车内容').tabBar(this.myBuilder('购物车',$r('app.media.ic_tabbar_icon_2')))Text('我的内容').tabBar(this.myBuilder('我的',$r('app.media.ic_tabbar_icon_3')))
2024-09-26 22:58:41
2227
1
原创 【07】纯血鸿蒙HarmonyOS NEXT星河版开发0基础学习笔记-Swiper轮播组件与样式&结构重用
Swiper(){//1.轮播内容//2.设置尺寸(内容会自动拉伸)//tips:给外层设置宽高,未来的子元素都会进行统一的拉伸//定制小圆点Indicator.dot() //小圆点.itemWidth(20) //默认的宽.itemHeight(5) //默认的高.color(Color.Gray) //默认的颜色.selectedItemWidth(30) //选中的宽.selectedItemHeight(5) //选中的高。
2024-09-24 06:45:09
3491
5
原创 【06】纯血鸿蒙HarmonyOS NEXT星河版开发0基础学习笔记-综合案例·生肖抽奖卡具体实现(类似支付宝集五福)
本文综合了前五次笔记的知识内容,完成了相对来说较为复杂的生肖抽奖卡案例,通过拆分和一步步的思路分析完成本案例,通过完成这次案例,笔者可以说是把前面的所有内容或多或少的都有所复习,特此分享给大家。笔者也是跟着B站黑马的课程一步步学习,学习的过程中添加部分自己的想法整理为笔记分享出来,如有代码错误或笔误,欢迎指正。角标用我们前文提到过的绝对定位也一样可以实现,不过这种角标太常用了,故有内置的badge角标组件。对于这种规规整整的布局方式,我们可以用以前学过的Column或者Row,也可以用Grid布局方式。
2024-09-10 21:57:24
2289
2
原创 【05】纯血鸿蒙HarmonyOS NEXT星河版开发0基础学习笔记-条件渲染+if/switch判断与for/while循环(附计数器、京东加购案例)
本文详细介绍了ArkTs语言中的数组、if单双多分支判断、switch判读、while循环、for循环并给出相应的具体案例和实现代码,附有综合案例京东购物的加购。笔者也是跟着B站黑马的课程一步步学习,学习的过程中添加部分自己的想法整理为笔记分享出来,如有代码错误或笔误,欢迎指正。数组名.splice(操作的起始位置,删除的个数,新增1,新增2,...):可以被求值的代码,并将其计算出一个结果(1+1、3*5、3>2)作用:ForEach可以基于数组的个数、渲染组件的个数(简化代码)
2024-09-10 21:46:52
1846
1
原创 【04】纯血鸿蒙HarmonyOS NEXT星河版开发0基础学习笔记-ArkTs进阶运算符+状态管理(附综合案例美团购物车)
笔者也是跟着B站黑马的课程一步步学习,学习的过程中添加部分自己的想法整理为笔记分享出来,如有代码错误或笔误,欢迎指正。本文详细介绍了字符串拼接、各类运算符、状态管理(界面数据动态展示)并给出相应的具体案例和实现代码。作用:用来判断比较两个数据大小,返回一个布尔值(true/false)作用:把两个或多个字符串,拼接成一个字符串(通常拼字符串和变量)但如果希望构建一个动态的、有交互的界面,就需要引入“状态”的概念。例:num+=1 相当于num=num+1。类型:<、>、 >=、<=、==、!
2024-09-09 21:04:19
1927
1
原创 【03】纯血鸿蒙HarmonyOS NEXT星河版开发0基础学习笔记-更多布局(弹性/层叠)方式与界面开发综合(附飞狗卡片+B站卡片案例+实战开发支付宝界面+代码)
本文详细介绍了弹性布局、绝对定位、层叠布局等布局知识并给出相应的具体案例和实现代码,目录第六节【界面开发实战-支付宝界面】整合前三期笔记的所有内容,实现了真正意义上我们平时所看见的App应用中使用的界面效果,并添加了Scoll滚动界面的用法。需求:在不动结构的情况下,调整组件的层级,可以通过.zIndex,如如果想要刘备盖住张飞关羽,可以添加.zIndex(3)即可实现。笔者也是跟着B站黑马的课程一步步学习,学习的过程中添加部分自己的想法整理为笔记分享出来,如有代码错误或笔误,欢迎指正。
2024-09-06 09:43:38
2119
原创 【02】纯血鸿蒙HarmonyOS NEXT星河版开发0基础学习笔记-界面进阶与布局排布(附QQ登陆、得物、京东登陆综合案例+代码)
作为软件工程系学生,或许鸿蒙开发语言并不像Java、C++这种经典的编程语言可以直接找到如单独使用Java语言工作的开发岗位,但技多不压身,鸿蒙开发语言的火热是大势所趋,学会鸿蒙至少可以起到锦上添花的作用。随着国家政府的支持,越来越多的高校把安卓课程替换为鸿蒙开发课程,目前已有23家985高校、46家211高校已开设或即将开设HarmonyOS相关课程。笔者也是跟着B站黑马的课程一步步学习,学习的过程中添加部分自己的想法整理为笔记分享出来,如有代码错误或笔误,欢迎指正。
2024-09-04 13:03:45
2344
原创 【01】纯血鸿蒙HarmonyOS NEXT星河版开发0基础学习笔记-ArkTs基础语法与界面开发基础
随着国家政府的支持,越来越多的高校把安卓课程替换为鸿蒙开发课程,目前已有23家985高校、46家211高校已开设或即将开设HarmonyOS相关课程。未来IOS、安卓、鸿蒙大有三分天下的局势。作为软件工程系学生,或许鸿蒙开发语言并不像Java、C++这种经典的编程语言可以直接找到如单独使用Java语言工作的开发岗位,但技多不压身,鸿蒙开发语言的火热是大势所趋,学会鸿蒙至少可以起到锦上添花的作用。笔者也是跟着B站黑马的课程一步步学习,学习的过程中添加部分自己的想法整理为笔记分享出来,如有代码错误或笔误,欢迎指
2024-09-03 16:33:46
1824
3
原创 计算机网络期末速成第四章网络层(附简答+大题)
本文旨在期末快速学习或回顾第四章的内容,以我的学校为例,计网期末第四章大概会占据四十分,也是本书最重要的一章,故内容较多,看完本章知识再对本书其他章节的填选和固定套路的大题随便复习复习即可轻松拿捏期末。目录一.4.3.3-2 无分类编址CIDR二.4.3.4-1 ARP协议三.4.3.4-2 DHCP协议四.4.3-44-3 ICMP协议五.4.4 IPv6六.4.5.3 RIP协议和距离向量算法七.4.5.4 OSPF协议与链路状态算法八.4.5.5 BGP协议九.4.6 IP组播十.4.7 移动IP。
2024-09-01 21:08:39
2255
2
原创 Vue期末考试速成复习指南附编程题(js开发基础+路由+Pinia)
答:每个.vue文件都可用来定义一个单文件组件,Vue中的单文件组件是Vue组件的文件格式。每个单文件组件由模板<template>、样式<style>、逻辑<script>三部分组成。
2024-08-31 17:50:26
2173
2
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人