自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 JAVA常见异常

如果线程t1调用Thread.sleep(1000)处于阻塞的过程中,其他线程调用了t1线程的inerrupt()方法,那么t1调用的sleep()方法就会立即抛出中断异常InterruptedException并停止阻塞.中断异常.这个异常通常在一个线程调用了会产生阻塞的方法处于阻塞的过程中,此时该线程的interrupt()方法被调用.那么阻塞方法会立即抛出中断异常并停止线程的阻塞使其继续运行.该异常通常出现在String对应的方法中,当我们指定的下标小于0或者大于等于字符串的长度时会抛出该异常。

2023-04-16 19:35:32 55

原创 SpringBoot项目

用户列表用户名</td>");pw.println("<td>密码</td>");pw.println("<td>昵称</td>");pw.println("<td>年龄

2023-04-15 19:22:10 67

原创 聊天室(续)

由于客户端start方法中循环进行的操作顺序是先通过控制台输入一句话后将其发送给服务端,然后再读取服务端发送回来的一句话.这导致如果客户端不输入内容就无法收到服务端发送过来的其他信息(其他客户端的聊天内容).因此要将客户端中接收消息的工作移动到一个单独的线程上执行,才能保证收发消息互不打扰.为了让能叫消息转发给所有客户端,我们 在Server上添加了一个集合类型的属性allOut,并且共所有线程ClientHandler使用,这时对集合的操作要考虑并发安全问题,还要考虑对集合的不同操作之间的互斥问题。

2023-04-14 20:19:13 65

原创 多线程笔记

当beans为1时,若两个线程同时调用getBean方法,t1线程先进行if判断,此时beans不为0,于是执行if后面的操作准备获取beans的值并对其进行--操作,但是还没有执行这句话发生了线程切换,那么t2线程也进行if判断,由于beans不为0,t2线程也执行if后面的操作获取beans的值并对其进行--操作,这会导致两个线程最终将beans的值从-减为了-1.导致后续操作出现死循环。System.out.println(t.getName() + ":正在执行dosome方法...");

2023-04-13 19:29:10 44

原创 多线程学习

*因为需要处理多客户端,所以服务端要循环调用accept方法,但该方法会产生阻塞,且读取客户端的消息也是依靠一个循环完成的,这会导致它接近是一个死循环,不结束的话也会影响服务端再次调用accept方法。线程start后会纳入到线程调度器中统一管理,线程只能被动的被分配时间片并发运行,而无法主动索取时间片.线程调度器尽可能均匀的将时间片分配给每个线程.**守护线程与普通线程的区别**主要体现在当java进程中所有的普通线程都结束时进程会结束,在结束前会杀死所有还在运行的守护线程。

2023-04-12 18:40:41 31

原创 exception

**C/S**:这里的C是指**Client**,即客户端。- **B/S**:这里的B是**Browser**,即浏览器,而S是指**Server**。**Socket**(套接字)封装了**TCP**协议的通讯细节,是的我们使用它可以与服务端建立网络链接,并通过 它获取两个流(一个输入一个输出),然后使用这两个流的读写操作完成与服务端的数据交互。- **可检测异常**:可检测异常经编译器验证,对于声明抛出异常的任何方法,编译器将强制执行处理或声明规则,不捕捉这个异常,编译器就通不过,不允许编译。

2023-04-11 18:15:08 22

原创 IOday03

实际开发中我们还有功能更好用的字符高级流.但是其他的字符高级流都有一个共通点:不能直接连接在字节流上.而实际操作设备的流都是低级流同时也都是字节流.因此不能直接在流连接中串联起来.转换流是一对可以连接在字节流上的字符流,其他的高级字符流可以连接在转换流上.在流连接中起到"转换器"的作用(负责字符与字节的实际转换)当返回值为-1时表达流读取到了末尾。缓冲流是一对高级流,在流链接中链接它的**目的是加快读写效率**。缓冲流内部**默认缓冲区为8kb**,缓冲流**总是块读写数据来提高读写效率**。

2023-04-11 08:39:42 43

原创 javaIO笔记总结

返回值为实际读取到的字节数。int read(byte[] data):块读取,最多读取data数组总长度的数据并从数组第一个位置开始存入到数组中,返回值表示实际读取到的字节量,如果返回值为-1表示本次没有读取到任何数据,是流的末尾。- java.io.InputStream:所有字节输入流的超类,其中定义了读取数据的方法.因此将来不管读取的是什么设备(连接该设备的流)都有这些读取的方法,因此我们可以用相同的方法读取不同设备中的数据。缓冲流是一对高级流,在流链接中链接它的**目的是加快读写效率。

2023-04-07 19:28:13 39

原创 java.io.File

createNewFile():创建一个新文件,如果指定的文件所在的目录不存在会抛出异常java.io.FileNotFoundException。- exists():判断File表示的文件或目录是否真实存在。File类的每一个实例可以表示硬盘(文件系统)中的一个文件或目录(实际上表示的是一个抽象路径)- isHidden():File表示的文件或目录是否为隐藏的。- listFiles():获取File表示的目录中的所有子项。- canWrite():File表示的文件或目录是否可写。

2023-04-06 18:36:41 24

原创 APIDay04ListSet

Collections.sort(List list)方法:可以对list集合进行自然排序(从小到大),但是其要求List集合中的元素必须是可比较的,判断是否可以比较的标准是元素是否实现了Comparable接口,若没有实现该接口则直接发生编译错误,但是在实际开发中,我们一般是不会不让我们自己写的类去实现Comparable接口的,因为这对我们的程序有侵入性。System.out.println("第1个元素为:"+list.get(0));

2023-04-04 18:04:16 31

原创 APIDay03Collection

java.util.Iterator接口:定义了迭代器遍历集合的相关操作,不同的集合都实现了用于遍历自身元素的迭代器实现类,但我们无需记住它们的名字,从多态的角度把它们看成Iterator即可。- java.util.Iterator接口:定义了迭代器遍历集合的相关操作,不同的集合都实现了用于遍历自身元素的迭代器实现类,但我们无需记住它们的名字,从多态的角度把它们看成Iterator即可。通过iterator()方法可以获取一个用于遍历当前集合元素的迭代器(Iterator接口)

2023-04-03 19:23:30 22

原创 APIDay02RegexObject

调用Object类的toString()时默认返回:类的全称@hashcode值,没有参考意义,所以常常重写toString()来返回具体的属性值。- 调用Object类的equals()时默认比较的还是==(即比较地址),没有参考意义,所以常常重写equals()来比较具体的属性值。- 调用Object类的equals()时默认比较的还是==(即比较地址),没有参考意义,所以常常重写equals()来比较具体的属性值。//按数字拆分(数字就拆没了)//true,包装类重写equals()比较值了。

2023-04-01 17:48:16 34

原创 APIDay01dayString

java推荐我们使用字面量/直接量(直接"")的方式来创建字符串对象,并且会将所有以字面量方式创建的对象缓存到常量池中,当使用相同字面量再创建字符串对象时将会复用常量池中的对象,以减少内存开销。- java推荐我们使用字面量/直接量(直接"")的方式来创建字符串对象,并且会将所有以字面量方式创建的对象缓存到常量池中,当使用相同字面量再创建字符串对象时将会复用常量池中的对象,以减少内存开销。//true,equals()比较的是内容是否相同---必须掌握。//判断str是否是以.png结尾的。

2023-03-31 19:48:49 35

原创 ooday05

/在plus()中不需要访问对象的属性/行为,所以认为plus的操作与对象无关,可以设计为静态方法。//获取所有枚举对象。class Doo extends Aoo{ //跨包继承-------------演示protected。- 默认的:什么也不写,本类、同包类--------------------------java不建议。- 默认的:什么也不写,本类、同包类--------------------------java不建议。//常量(静态常量)

2023-03-30 19:08:29 22

原创 ooday04

System.out.println(color+"色的"+age+"岁的狗狗"+name+"正在游泳...");System.out.println(color+"色的"+age+"岁的小鱼"+name+"正在游泳...");- 类的全称---------------------------------------太繁琐、不建议。- 类的全称---------------------------------------太繁琐、不建议。

2023-03-29 19:49:59 25

原创 ooday03

System.out.println(color+"色的"+age+"岁的狗狗"+name+"正在吃肯头...");System.out.println(color+"色的"+age+"岁的狗狗"+name+"正在看家...");System.out.println(color+"色的"+age+"岁的狗狗"+name+"正在看家...");System.out.println(color+"色的"+age+"岁的狗狗"+name+"正在游泳...");//输出每只狗狗的名字。//输出第1只狗狗的名字。

2023-03-28 20:15:40 27

原创 ooday02笔记

System.out.println("大家好,我叫"+name+",今年"+age+"岁了,家住"+address+",所在班级为:"+className+",学号为:"+stuId);System.out.println("大家好,我叫"+name+",今年"+age+"岁了,家住"+address+",工资为:"+salary);System.out.println(color+"色的"+age+"岁的"+name+"正在喝水...");//传递的是name/age/address的值。

2023-03-27 20:33:15 28

原创 学生成绩管理系统设计实现

System.out.println(name+"的成绩是"+scores[index]);System.out.println("请输入学生姓名:");System.out.println("查无此人");System.out.println("请输入学生姓名");System.out.println("请输入成绩:");

2023-03-25 17:41:47 31

原创 00day01

this()-----------------------------------调用构造方法(一般不用)- this.方法名()-------------------------调用方法(一般不用)//调用无参构造方法。- this.成员变量名--------------------访问成员变量(必须掌握)OOP:面向对象编程---------------------------你们所参与的部分。- 对象的属性/特征/数据----------------------成员变量。

2023-03-24 20:09:26 38

原创 主持人大赛

/获取去掉最高分和最低分之后的总分。System.out.println("请输入第"+(i+1)+"个评委的分数:");//1)录入评委的评分。//返回去掉最高分和最低分之后的总分。if(scores[i]>max){ //找最大值。if(scores[i]<min){ //找最小值。* 选手的最终得分为: 去掉最高分和最低分后的N-2个评委的平均分。

2023-03-23 19:29:10 51

原创 主持人大赛计算平均分

/获取去掉最高分和最低分之后的总分。System.out.println("请输入第"+(i+1)+"个评委的分数:");//1)录入评委的评分。//返回去掉最高分和最低分之后的总分。if(scores[i]>max){ //找最大值。if(scores[i]

2023-03-23 18:31:57 126

原创 计算机票打折

System.out.println("请选择舱位: 1.头等舱 2.商务舱 3.经济舱");System.out.println("机票的最终价格为:"+finalPrice);System.out.println("机票原价输入错误");System.out.println("月份输入错误");System.out.println("舱位输入错误");System.out.println("请输入机票原价:");System.out.println("请输入月份:");=-1){ //数据合法。

2023-03-23 18:31:09 264

原创 猜数字小游戏

System.out.println("恭喜你猜对了");System.out.println("猜大了");System.out.println("猜小了");System.out.println("猜吧!* 训练目标: while(true)自造死循环+break。while(true){ //自造死循环。* 需求:猜数字小游戏。

2023-03-23 18:30:56 26

原创 提取素数。

/ 7%2/3/4/5/6,但凡有1个为0的,就能说明它不是素数,只有都不为0的,才是素数。//假设每个num都是true。* 素数:除了1和它本身外,不能被其它任何自然数整除的数----只能被1和它本身整除。//2)修改num为不是素数。System.out.println(num+"不是素数");System.out.println(num+"是素数");//1)假设num是素数。if(flag){ //3)判断flag标记。//带数(2/3/4/5/6/7/8)

2023-03-23 18:30:31 33

原创 随机生成N位验证码

/随机下标(0到61)'3','4','5','6','7','8','9'};//验证码字符可选范围。//根据随机下标获取对应字符并拼接到code中。System.out.println("验证码:" + code);i++) { //len次。* 需求:随机生成N位验证码(大写字母、小写字母、数字)/** 生成验证码 */

2023-03-23 18:29:32 73

原创 java新手笔记day06

/1)结束方法的执行------------------------------------------用在无返回值的方法中。//1)结束方法的执行------------------------------------------用在无返回值的方法中。public static void sayHi(String name){ //----------------------形参。public static void say(String name){ //-----------------形参。

2023-03-22 20:07:08 30

原创 java初学笔记 day05

/加数b(0到99)i++){ //10次 (1)25+14=?System.out.println("数组的长度:"+arr.length);System.out.println("第1个元素为:"+arr[0]);

2023-03-21 19:54:08 41

原创 java初学笔记day04

若相同--------------------------------直接上do...while。System.out.println("年龄为:"+age+",价格为:"+price);- 若有关--------------------------------------直接上for。- 若不同--------------------------------直接上while。

2023-03-20 20:10:00 58

原创 java练习

2. 声明一个整型变量year并存储年份,判断其是平年还是闰年,若是闰年则输出"某某某年是闰年",否则输出"某某某年是平年"。System.out.println(year+"年是闰年单不是400年闰年");System.out.println(year+"年是四百年闰年");System.out.println(year+"年是闰年");System.out.println(year+"不是闰年");System.out.println(year+"不是闰年");2)400年再闰,就是:能被400整除。

2023-03-18 16:50:59 118 2

原创 java初学笔记day03

System.out.println("大家好,我叫"+name+",今年"+age+"岁了");再判断boolean-3,若为true则执行语句块3(结束),若为false则执行语句块4(结束)System.out.println("大家好,我叫"+name);//false------a自增1变为6。//true-------a自增1变为7。System.out.println("我今年"+age+"岁了");//编译错误,需强转,改为:s=(short)(s+10);//0,商4余0----整除。

2023-03-17 21:43:20 76

原创 java初学笔记day02

/-2147483648(int的最小值),发生溢出了,需要避免。//编译错误,100亿默认int类型,但超出int范围了。//声明三个整型变量个g,h,i,并赋值为5,8,10。//2)byte,short,char型数据参与运算时,先一律自动转换为int再运算。//声明整型变量e并赋值为250------开户的同事存钱。

2023-03-16 18:45:32 67 1

原创 java初学笔记day01

java初学笔记

2023-03-15 19:44:57 148 5

空空如也

空空如也

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

TA关注的人

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