自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 第二十一章 网络通信

网络应用程序就是再已连接的不同计算机上运行的程序,这些程序借助于网络协议,相互之间可以交换数据,编写网络应用程序前,首先必须明确网络协议TCP/IP协议是网络应用程序的首选。网络程序设计编写始于其他计算机进行通信的程序,java已经将网络程序所需要而定元素封装成不同的类,用户只要床啊金这些类的对象,使用相应的方法即使不举报相关的网络知识,也是可以编写除高质量的网络通信程序的,System.out.println("服务端与 " + ip + ":" + port + " 已建立连接");

2023-12-08 14:02:42 1338

原创 Java实现TCP一对一通信,实现UDP群聊通信

必须先启动服务端再启动客户端才可,如果是两台电脑的情况下,只需要获得其中一个电脑的ip进行服务器启动,另一个进行链接即可。其中可自由更改对话框的样式。自由创建对象来实现群聊。

2023-12-08 09:07:16 464

原创 第二十章 多线程

如果一个线程在运行状态下发出输入/输出请求,该线程将进入阻塞状态,在其等待输入/输出结束时线程进入就绪状态,对于阻塞的线程来说,即使系统资源空闲,线程依然不能回到运行状态。一个线程运行到同步块时首先检查该对象的标志位,如果为0状态,表明此同步块内存在其他线程,这时当期线程处于就绪状态,直到处于同步块中的线程执行完同步块中的代码后,这时该对象的标识位设置为1,当期线程才能开始执行同步块中的代码,并将Object对象的标识位设置为0,以防止其他线程执行同步块中的代码。//以该类对象分别实例化4个线程。

2023-11-29 17:33:57 910

原创 用java实现王者荣耀

然后是创建类 GameFrame 运行类。// 添加键盘监视器。// 用户不能调整窗口大小。第一步是创建项目 项目名自拟。

2023-11-26 21:32:46 871

原创 飞翔的小鸟游戏实现

if(y-height/2>column.y-column.gap/2&&//小鸟是否在柱子缝隙中间。x-width/2<column.x+column.width/2){ //柱子左边界与右边界检测。//当小鸟的模型下边缘碰到地面,视为碰撞。// 在结束状态,按下鼠标则重置数据,再次转为开始态。// 在开始状态,按下鼠标则转为运行状态。// 在运行状态,按下鼠标则小鸟向上飞行。

2023-11-23 19:31:41 533 1

原创 java实现拼图游戏

jfc.setFileFilter(new FileNameExtensionFilter("图片格式(jpg|png|gif|jpeg)", "jpg","png","gif","jpeg"));JOptionPane.showMessageDialog(null, hs+"*"+ls+"拼图记录:"+name+"的步数是:"+times+"\r\n");由之前坐标设置给出下面的x,y。String info = hs+"*"+ls+"拼图记录:"+name+"的步数是:"+times+"\r\n";

2023-11-20 14:10:19 63

原创 用Java实现俄罗斯方块

1.弹出窗口,直接开始游戏,按W键改变方块的方向,按S键快速向下降落,按A键向左移动,按D键向右移动。以上步骤都做好就可以进行测试了,先激活Fn键,然后ctrl+F11快捷运行。3.当方块达到顶峰时,则判定游戏结束,弹出下面示例。2.其次新建一个类,命名为Main,或其他的。1.首先新建一个项目,并命名为俄罗斯方块。2.通过最下面一行满格来获得分数。

2023-11-17 12:14:08 43

原创 用Java实现贪吃蛇游戏

然后再在项目的src文件下创建一个com.xxx.view的包用来存放所有的图形界面类,创建一个com.xxx.controller的包用来存放启动的入口类(控制类)。以上步骤都做好就可以进行测试了,先激活Fn键,然后ctrl+F11快捷运行。其次在贪吃蛇项目下创建一个名为images的文件夹用来存放游戏相关图片。首先创建一个新的项目,并命名为贪吃蛇。1.弹出窗口,设置贪吃蛇移动速度。2.按任意键开始游戏,空格键暂停。

2023-11-17 12:02:22 29

原创 第十九章 Java绘图

执行图像从源到目标的缩放,要将源矩形的第一个坐标映射到目标矩形的第一个坐标,源矩形的第二个坐标映射到目标矩形的第二个坐标,按需要缩放和翻转子图像,以保持这些映射关系。绘制类不仅可以是绘制图形和文本还可以使用drawImage()方法将图片资源显示在绘图上下文中,而且可以是西安各种特效处理,如:图片的缩放,反转等。使用Graphics2D类可以完成简单的图形绘制任务,但是她所实现的功能非常有限,如无法改变线条的粗细,不能对图片使用旋转和模糊等过滤效果。1.rgb:颜色值,该值是,红,绿,蓝,三原色的总和,

2023-11-17 09:03:27 26

原创 第十八章 Swing程序设计

容器默认的布局管理器是边界布局(BorderLayout)管理器,边界布局管理器把容器分为东南、西、北、中5个区域,如果使用了边界布局管理器,在向容器中添加组件时,如果不指定要把组件添加到哪个区域那么当前组件会被默认添加到 CENTER 区域;表格中的数据内容需要予以维护,如使用 getValueAt0方法获得表格中某一个单元格的值,使用addRow0方法向表格中添加新的行,使用 setValueAt0方法修改表格中某一个单元格的值,使用removeRow0方法从表格中删除指定行等。

2023-11-10 16:12:03 27

原创 第十六章 反射和注释

System.out.println("返回值为:" + method.invoke(demo, "7", 5));} else if (fieldType.equals(float.class)) { // 判断成员变量的类型是否为float型。} else if (fieldType.equals(float.class)) { // 判断成员变量的类型是否为float型。if (fieldType.equals(int.class)) { // 判断成员变量的类型是否为int型。

2023-11-01 13:43:56 18

原创 第13章枚举类型和泛型

13.1.1 使用枚举类型定义常量设置常量时 我们通常将常量放在接口中的 这样在程序中就可以直接使用。该常量不能被修改,因为在接口中定义常量时,该常量的修饰符final与static 常规的定义和枚举的定义如下常规定义:枚举类型定义如下:传入枚举类13.1.2深入了解枚举类型。

2023-10-26 16:30:02 48

原创 第十五章I/O(输入/输出)

字符流解决了字节流读取汉字乱码的问题,FileReader类按顺序读取文件,只要不关闭流,每次调用Read()方法就能按顺序读取源中的其余内容,直到源的末尾和流的关闭。分别通过DataOutputStream类的writeUTF()、writeDouble()、writeBoolean()方法向指定文件按顺序输入不同的数据类型。FileInputStream与FileOutStream类都是用来操作磁盘,实现文件的字节读取和写入的功能。用递归的方法不断打开文件夹下的文件,并打印该文件名。

2023-10-22 17:12:56 24

原创 第十七章数据库操作

insert用于向表中插入新的数据 insert into 表名[(字段名1,字段名2...)]value(属性1,属性2....)update语句用于更新数据表中的某些记录 update 表名 set 字段名=新的字段值 where 条件表达式。jdbc:mysql:java连接数据库的技术,连接mysql数据库。DriverManager用于管理数据库中的驱动程序。select语句用于查询数据表中的数据。delete语句用于删除数据表中的数据。第四步:执行SQL语句返回结果集。

2023-10-15 20:21:37 24

原创 第14章lambda表达式与流处理

lambda表达式可以用非常少的代码实现抽象方法。lambda表达式不能独立执行,因此,必须实现函数式接口,并且会返回一个函数式接口的对象。lambda表达式的语法非常特殊,格式如下。()->结果表达式数->结果表达式(参数1.参数2....,参数n)->结果表达式第1行实现无参方法,单独写一对圆括号表示方法无参数,操作符右侧的结果表达式表示方法的返回值。第2行实现只有一个参数的方法,参数可以写在圆括号里,或者不写圆括号。

2023-10-15 03:11:23 24

原创 学生管理系统(博客版)

代码:结果:mysql里面结果:

2023-10-07 21:07:31 31

原创 学生选课系统

1.java概念与作用现实中很多事物凑在一起都是集合 如购物车是商品的集合 军队呢 是军人的集合 学校是学生的结合 数学中的集合: 具有共同属性的事物的总体 java中的集合类呢 跟数学的集合有点类似 java中的集合:是一种工具,就像容器。存储任意数量的具有共同属性的对象作用: 1.在类的内部,对数据进行组织2.简单而快速的搜索大数量的条目;3.有的集合接口,提供了一系列排列有序的元素,并且可以在序列中间快速增删改2.体系结构3.实际应用。

2023-09-26 18:46:33 16

原创 第十二章 集合类

2.TreeMap类不仅实现了Map接口,还实现了java.util.SortedMap接口,因此集合中映射关系具有一定的顺序,但在添加和删除和定位映射关系时,TreeMap类比HashMap类性能较差,由于TreeMap类实现的Map集合中的映射关系是根据键对象按照一定顺序排列的 ,因此不允许键对象是null。集合类和数组类的不同之处是:数组的长度是固定的,集合的长度是可变的,数组是用来存放基本数据类型,集合是用来存放对象的引用。删除:remove;

2023-09-17 18:00:31 21

原创 用java实现简易炸金花

首先,我们需要,用字符串型定义的花色,用整数型定义扑克牌上的数字,便于扑克牌的保存。再通过构造方法产生对应的对象,对外提供getter和setter方法便于使用。然后重写方法,使结果返回对应的花色与数字。

2023-09-16 17:07:48 65

原创 Java入门 第三季

(1)try:负责捕获异常,一旦try中发现异常,程序的控制权将被移交给catch块中的异常处理程序。System.out.println("m 转换为String型后与整数20的求和结果为: "+(str1+20));System.out.println("装箱后的结果为:" + b + "和" + c);(多个catch块处理的异常类,要按照先catch子类后catch父类的处理方式,遵循就近原则。(2)catch:处理,比执行完catch块之后程序跳出catch块,继续执行后面的代码。

2023-09-10 18:34:59 18

原创 Java入门 第二季

getOwner()/setOwner()方法并不是语法要求,只是利用了Java中方法的特性访问私有成员变量。方法是用于完成特定功能的整段代码,通过对一段可以实现特定功能的代码进行简单的包装,形成方法,让程序可以反复去调用同一个方法,来反复实现这个功能。将数据和操作数据的方法进行有机结合,隐藏对象的属性和实现细节,仅对外公开接口来和对象进行交互。一个接口里面有好多抽象方法,在普通类中只重写一部分,要么继续把接下来的方法重写,要么将该类改为抽象类。类是对象的模板,类的特征与行为就类似于宠物狗的特征与行为。

2023-09-10 18:19:33 16

原创 Java入门第一季

1-1Java的介绍与前景Java如日中天,风光无限男怕入错行,女怕嫁错郎80%互联网公司都在用100%银行,超过80%金融机构都在用最好的云计算方案与生态最好的大数据架构解决方案与生态1-2Java的特性与版本java发展里程碑Java的版本区别1、J2SE:标准版,提供了Java语言最核心的功能,是其他版本的基础2、J2EE:企业版,针对企业级应用开发提供了更多高级功能3、J2ME:嵌入式版,可为智能设备开发应用程序,目前已极少使用1-3我与Java第一次亲密接触。

2023-09-10 18:09:53 30

原创 第九章总结

在程序中,异常可能由程序没有预料到的各种情况产生,也可能由超出了程序员的可控范围的环境因素产生,如用户的坏数据,试图打开一个根本不存在的文件等,在Java中,这种程序运行时可能出现的一些错误被误为异常,异常是一个在程序执行期间发生的事件,它中断了正在执行的程序的正常指令流算法异常:使用Java内置的异常类可以描述在编程类时出现的大部分异常情况,除此之外,用户只需要继承Exception类即可自定义异常类,在程序中使用自定义异常类,大部分可分为以下步骤:1.创建自定义异常类。

2023-06-13 12:38:45 23

原创 第三篇java复习博客

尽管人人希望自己身体健康,处理的事情都能顺利进行,但在实际生活中总会遇到各种状况,比如感冒发烧,工作时电脑蓝屏、死机等。同样,在程序运行的过程中,也会发生各种非正常状况,比如程序运行时磁盘空间不足、网络连接中断、被装载的类不存在等。针对这种情况,在Java语言中,引入了异常,以异常类的形式对这些非正常情况进行封装,通过异常处理机制对程序运行时发生的各种问题进行处理。接下来就对这两个直接子类进行详细的讲解。

2023-06-07 15:20:22 38

原创 第十一章总结

与c语言不同,Java从控制台中读出用户输入的值,用到的不是一行可以直接使用的代码,二十由一个叫Scanner的类来实现的,Scanner英文直译就是扫描器,他的用途就是和现实生活的扫描器一样,可以将数字化信息流转位人类可识别的文字,控制台输出内容用到了System.out表示向控制台输出,System.in就表示从控制台输入,让Scanner扫描System.in就可以获取用户输入的值了。另外,该类还为实现包范围外的具体日历系统提供了其他字段和方法,这些字段和方法被定义为 protected。

2023-05-26 12:24:17 24

原创 第十章总结

compareTo()方法为按字典顺序比较两个字符串,该比较基于字符串的各个字符的Unicode值,按字典顺序String对象表示的字符顺序与参数字符串所表示的字符序列进行比较,如果按字典顺序此String对象位于参数字符串之前,则比较结果为一个负整数;xOf()与last Index Of()方法,这两种方法都允许在字符串中搜索指定条件的字符和字符串,inedexOf()方法返回的是搜索的字符或字符串首次出现的位置,lastIndexOf()方法返回的是搜索的字符或字符串最后一次出现的位置。

2023-05-12 12:05:09 41

原创 第二篇Java核心技术复习博

在Java语言中,有两种比较对象的方式,分别为“==”运算符与equals()方法,两者区别在于:“==”比较的是两个对象引用内存地址是否相等,而equals()方法比较的是两个对象的实际内容,所以equals()方法判断出了这两个对象实际上是同一个,而“==”运算符无法做出有效判断,如果两个对象类型的不同,那么equals()方法就会认为两者都不同。在Java中,类的继承是指在一个现有类的基础上去构建一个新的类构建出来的新类被称作子类,现有类被称作父类,子类会自动拥有父类所有可继承的属性和方法。

2023-04-26 00:09:38 28

原创 第八章总结

Java中每个接口或类都来自不同的类包,无论是JavaAPI中类与接口还是自定义的类与接口,都需要隶属于某个类包,这个类包包含了一些类和接口,如果没有包的存在,管理程序中类的名称将是一件非常麻烦的事,如果程序只有一个类组成,自然不会出现类名重叠的问题,但是随着程序的类的数量增多,难免会出现这一问题。在一个文件中定义两个类,则其中任何一个类都不在另一个类的内部,如果在类中在定义一个类,则将在类中在定义的那个类称为内部类。import com.mr.Math //导入com.mr包含Math类。

2023-04-23 22:41:10 20

原创 第七次java作业

第一题:第二题:第三题:第四题:第五题:第六题:第七题:第八题:第九题:

2023-04-06 01:28:56 82

原创 第七章总结

(4)Java只支持单继承,即一个类只能有一个父类,子类在继承父类之后,创建子类对象的同时也会调用父类的构造方法。向上转型可以被理解为将子类类型的对象转换为父类类型的对象,即把子类类型的对象直接赋值给父类类型的对象,进而实现按照父类描述子类的效果,在运行向上转型的过程中,父类的对象无法调用子类独有的属性或者方法。向下转型可以被认为将父类类型的对象转换为子类类型的对象,但是,运行向下转型,如果把一个较抽象的类的对象转换为一个较具体的类的对象,这样的转型通常会出现错误,因此向下转型是不安全的。

2023-04-05 00:11:39 23

原创 第六章总结

(1)封装是面对对象编程的核心思想,将对象的属性和行为封装起来,其载体就是类,类通常对客户隐藏其实现细节,这就是封装思想,(2)采用封装的思想保证了类内部数据结构的完整性,使用类的用户不能轻易的直接操作类的数据结构,只能执行类允许公开的数据。类就是同一类事物的统称,如果将现实世界中的一个抽象成对象,类就是这类对象的统称,在Java语言中,类对象的行为是以方法的形容来定义的,对象的属性是以成员变量的形式定义的,所以类包括对象的属性和方法。(4)识别出这个对象的属性和行为后,这个对象就被定义完成了。

2023-04-02 03:16:13 27

原创 第一篇Java基础知识,复习博客

在程序运行期间 随时可能产生一个临时变量 应用程序会将这些数据保存在一i写内存 单元中 每个内存单元都会有标识符来标识。这些内存单元我们称之为变量,来定义标识符就是变量名,内存单元中储存的数据数据类型 分为 基本数据类型 分为三个1.数值型 2.字符型 3.布尔型 数值型分为两种 一个是整数类型 一个是浮点类型 引用数据类型分为 类 换口 数组 枚举 注解整数类型:浮点类型:布尔类型:字符类型:>假设有一个游戏程序,程序在运行过程中,要不断地发射炮弹。

2023-03-28 00:56:41 67

原创 第六次java作业

第一题:第二题:第三题:

2023-03-19 03:19:48 68

原创 第五次java作业

第一题代码与结果:第二题代码:结果:

2023-03-19 02:51:13 20

原创 第五章总结

4.先声明,再用new关键字进行内存分配:数组元素类型决定了数组的数据类型,它可以是Java中任意的数据类型,包括简单类型和组合类型,数组名字为一个合法的标识符,符号“[]”,指明该变量是一个数组类型变量,单个“[]”,表示要创建的数组是一个一维数组。14.遍历数组:遍历数组就是获取数组中的每个元素,通常遍历数组都是使用for循环来实现,遍历一维数组很简单,也很好理解,遍历二维数组需使用双层for循环,通过数组的length属性可获得数组的长度。

2023-03-19 01:49:11 43

原创 第四次java作业

第一题:代码:结果:第二题:代码:输出结果:第三题:代码:结果:第四题:代码:结果:第五题:代码:结果:第六题:代码结果:第七题:代码:结果:

2023-03-12 02:37:28 23

原创 第四章总结

1.复合语句:与c语言及其语言相同,Java语言的复合语句是以一整个块区为单位的语句,所以又称块语句,复合语句由开括号“{”开始,闭括号“}”结束,在前面的学习中我们也接触到了这种复合语句,例如:在定义一个类或方法时,类型就是以“{”与“}”作为开始和结束的标记,方法体同样也是以”{”与”}”作为标记,复合语句中的每个语句都是从上到下被执行,复合语句以整个块为单位能够用在任何一个单位语句可以使用的地方,并且在复合语句中还可以嵌套复合语句。while (条件表达式){

2023-03-12 01:34:49 22

原创 第三次Java作业

第一题:编写代码:输出结果:第二题:编写代码:输出结果:第三题:编写代码:输出结果:第四题:编写代码:输出结果:

2023-03-02 23:11:36 29

原创 Java语言基础

1.标识符:标识符是用来标识类名、变量名、方法名、数组名、文件名的有效字符序列。Java语言中标识符由任意顺序的字母、下画线(_)、美元f符号($)和数字组成,并且第一个字符不能是数字,也不能是Java语言中的关键字。关键字图片:2. 变量与常量:变量分为成员变量和局部变量,成员变量在整个类都有效,而局部变量只能在当前代码块中有效。课堂小练:运行结果如下:输出结果为四,相同标识符按就近原则。也可以指明选Java,则会以java最近的times输出结果,如图代码:结果

2023-02-27 09:32:26 69

原创 第二次Java作业

题目:代码:输出结果:我输出的是空心爱心,按次方法也能输出填满的爱心

2023-02-26 19:07:58 24

空空如也

空空如也

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

TA关注的人

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