- 博客(48)
- 收藏
- 关注
原创 第二十一章总结
java.net 包中的 ServerSocket 类用于表示服务器套接字,其主要功能是等待来自网络上的“请求”它可通过指定的端口来等待连接的套接字。如果多台客户机同时提出连接请求,服务器套接字会将请求连接的客户机存入列队中,然后从中取出一个套接字,与服务器新建的套接字连接起来。TCP协议是一种以固接连线为基础的协议,它提供两台计算机间可靠的数据传送。通常,0~1023的端口数用于一些知名的网络服务和应用,用户的普通网络应用程序应该使用1024以上的端口数,以避免端口号与另一个应用或系统服务所用端口冲突。
2023-12-09 14:25:23
105
原创 UDP协议实现群聊
centerTextArea.append(p.getAddress().getHostAddress()+":"+((InetSocketAddress)p.getSocketAddress()).getPort()+"对我说:\n"+new String(p.getData(),0,p.getLength())+"\n\n");JOptionPane.showMessageDialog(liaotian.this,"监听未成功");stateLB.setText("已在"+port+"端口监听");
2023-12-07 13:26:46
117
原创 TCP协议实现一对一聊天
System.out.println("A说:"+mr);System.out.println("服务端已启动等待连接");System.out.println("B说:"+mr);System.out.println("连接成功!System.out.println("连接成功!运行服务端代码后,再运行客户端代码,即可实现一对一聊天。* 用于接收对方消息。* 用于接收对方消息。* 用于发送消息线程类。*用于接收消息线程类。
2023-12-07 13:26:16
110
原创 第二十章总结
二.创建线程1.继承Thread类Thread类中常用的两个构造方法如下:public Thread():创建一个新的线程对象。public Thread(String threadName):创建一个名称为threadName的线程对象。
2023-12-07 13:25:34
74
原创 java游戏制作-王者荣耀游戏
System.out.println("技能一冷却时间: " + coolDownTimeOne / 1000);System.out.println("技能二冷却时间: " + coolDownTimeTwo / 1000);System.out.println("三技能冷却时间: " + three / 1000);System.out.println("三技能冷却时间: " + three / 1000);System.out.println("一技能冷却时间: " + one / 1000);
2023-11-29 01:56:19
188
原创 java游戏制作-拼图游戏
先在Java项目中创建图片文件夹,将图片导入其中。再在src中创建一个包,用来制作主界面。首先创建一个Java项目命名为。
2023-11-19 20:00:07
159
原创 俄罗斯方块
null) { //判断该位置是否有方块。String[] show_state= {"P[暂停]","C[继续]","R[重开]"};//判断是否越界或者重合,如果是则右移恢复原来的状态,不是则左移。//判断是否越界或者重合,如果是则左移恢复原来的状态,不是则右移。//判断,当前游戏状态在游戏中时,每隔0.5秒下落。//判断方块是否出界,出界返回true,没有则返回false。//判断游戏是否结束,结束返回true,继续返回false。//判断当前行是否满,满返回true,没有满返回false。
2023-11-17 12:40:14
97
原创 第十九章总结
一.Java绘图类1.Graphics类Graphics类是所有图形上下文的抽象基类,它允许应用程序在组件以及闭屏图像上进行绘制。Graphics类封装了Java支持的基本绘图操作所需的状态信息,主要包括颜色、字体、画笔、文本、图像等。2.Graphics2D类Graphics2D类继承Graphics类,实现了功能更加强大的绘图操作的集合。二.绘制图形【例19.1】绘制奥运五环图案代码:要绘制指定形状的图形,需要先创建并初始化改图形类的对象,且这些图形类必须是;
2023-11-15 21:07:13
72
原创 使用Java实现一个简单的贪吃蛇小游戏
然后,创建贪吃蛇游戏的Java项目命名为。再在src文件下创建两个包,一个命名为。最后,分别在两个包下创建两个类命名为。,并在这个项目里创建一个。,将图片素材导入文件夹。
2023-11-15 21:02:38
194
原创 第十八章 Swing程序设计
改变窗体大小时,组件的大小也会随之改变。首先需要自定义一个addButtons()方法,用来将所有的按键添加到一个ArrayList集合中,然后添加一个JTextField组件,并为该组件添加addKeyListener事件监听,在该事件监听中重写keyPressed()和keyReleased()方法,分别用来在按下和释放键时执行相应的操作。表格被创建后,还可以使用setRowSorter()方法为表格设置排序器:当单击表格的某一列的列头时,在这一列的列名后将出现▲标记,说明将按升序排列表格中的所有行;
2023-11-15 20:56:05
69
原创 第十八章总结
二.Swing常用窗体1.JFrame窗体创建一个不可见、具有标题的窗体,关键代码:JFrame jf=new JFrame("登陆系统");在创建窗体后,先调用getContentPane()方法将窗体转换为容器,再调用add()方法或者remove()方法向容器中添加组件或者删除容器中的组件。
2023-11-09 19:07:11
39
原创 第十六章 反射与注解
所有 Java 类均继承了 bjet 类,在 Object 类中定义了一个 getClass0方法,该回一个类型为Class的对象。例如下面的代码://创建JTextField对象//获取Class对象利用Class类的对象textFieldC,可以访问用来返回该对象的 textField 对象的描述信息。可的主要描述信息如表16.1所示。16.1.1访问构造方法在通过下列一组方法访问构造方法时,将返回Constructor类型的对象或数组。
2023-11-02 18:48:56
33
原创 第十三章---枚举类型与泛型
泛型机制中,提供了类型通配符,其主要作用是在创建一个泛型类对象时限制这个泛型类的类或承某个接口或类的子类。System.out.println("获得ArrayList容器的成员值:"+a.get(i));System.out.println("价格:"+bookPrice.getbookInfo());String value[]= {"成员1","成员2","成员3","成员4","成员5"};System.out.println("获得Map容器的成员值:"+m.get(i));
2023-10-29 22:03:51
37
原创 第十五章 I/O(输入/输出)
File累定义了一些平台无关的方法来操作文件可以通过调用File类中的方法来实现创建 删除 重命名等等操作File累的对象最主要用来获取文件本省的一些信息 如文件所在的目录 文件长度 文件读写权限,数据流可以将数据写入文件中 文件也是数据流最常用的数据媒体。流是一组有序的数据,根据操作的类型,可分为输入流和输出流两种,I/O(Input/Output。//该构造方法根据定义的父路径和子路径字符串(包括文件名)创建一个新的File对象。
2023-10-29 21:59:57
44
原创 17章JDBC
JDBC是一种可用于执行SQL语句的Java API(Application Programming Interface,应用程序设计接口),是连接数据库和Java应用程序的纽带。操作指定数据库之前,需要使用Java中class类的静态方法forName加载指定数据库的驱动程序。此接口用来动态地执行SQL语句,通过实例执行的动态SQL语句,将被预编译并保存到实例中,从而反复的执行该SQL语句。这个接口代表与特定的数据库的连接,在连接上下文中执行SQL语句并返回结果。//第四步:执行SQL语句返回结果集。
2023-10-15 22:09:18
41
原创 14章拉马达表达式与流处理
14.1lambda表达式14.1.1lambda表达式简介lambda表达式可以用非常少的代码实现抽象方法。lambda表达式不能独立执行,因此必须实现函数式接口,并且会返回一个函数式接口的对象。lambda表达式的语法非常特殊。
2023-10-15 22:08:54
57
原创 学生管理系统 数据库版
> (1,'张三',1234567890,'男'),-> (2,'李四',1234567890,'男'),-> (3,'王五',1234567890,'男'),-> (4,'老六',1234567890,'男'),-> (5,'小明',1234567890,'男'),-> (6,'小红',1234567890,'女'),
2023-10-07 17:37:13
41
原创 Java第十二章
集合中的各个对象,很容易将其从集合中取出来,也很容易将其存放到集合中,还可以将其按照一定的顺序进行摆放。Java 中提供了不同的集合分类,这些类具有不同的存储对象,同时提供了相应的方法,以方便用户对集合进行遍历、添加、删除和查找指定的对象。Set集合中的对象不按特定的方式排序,只是简单地把对象加入集合中,但Set集合中不能包含重复对象。常用的集合有List 集合、Set 集合和 Map集合,其中List集合与Set集合继承了 Collection接口,各接口还提供了不同的实现类。用于遍历集合中的对象。
2023-09-18 18:59:07
60
原创 java基础学习三
在上面的代码中,我们首先抛出一个新的Exception对象,然后在捕获该异常时,我们创建一个新的Exception对象,并将原始的异常对象作为第二个参数传递给构造函数。然后我们重新抛出这个新的异常。虽然使用 + 运算符能够达到附加新字符或新字符串的目的,但是 + 运算符是产生一个新的String实例,创建一个新的字符串对象,如果大量的对字符串进行修改,会极大的增加系统开销。总的来说,Java中的字符串之所以具有不变性,是因为其底层结构是基于字符数组实现的,并且操作字符串时是通过创建新的字符串来实现的。
2023-09-09 23:41:09
48
原创 java基础学习二
这一小节主要讲的就是 上一题的主要的解析内容 主要就是讲上一小题的解题思路 主要就是用while语句 然后循环出它的 加分次数和加分后的分数。本小节的练习主要是讲解 使用for循环和scanner 获取键盘上输入的数来得出班级的人数和分数 还有求出平均值和总和。使用Scanner语句 获取键盘上输入的值 然后还是使用while语句 循环出它的加分次数和它的加分后的成绩。6.5:使用循环操作 java中的数组。6.3:如何使用java中的数组。主要讲解了 程序的调试和 断点。5.3:编程的练习优化。
2023-09-09 23:40:11
33
原创 Java第十一章常用类库
前面外绍了Java包,对于数型的包装类,它们有一个共同的父类--Number类,该类是一个抽象类,它是Byte、Integer、Short、Long、Float和Double类的父类,其子类必须提供将示的数值转换为byte、int、short、long、float和double的方法。通过使用该类可以为要输出的数字加上单位或控制数字的精度。正所谓,术业有专攻,在常用类中主要包含可以将基本数据类型封装起来的个包装类、解决常见数学问题的Math类、生成随机数的Random类,以及处理日期时间的相关类等。
2023-06-14 10:38:44
49
原创 Java第九章异常处理
通过throw抛出异常后,如果想在上一级代码中捕获并处理异常,则需要在抛出异常的方法中使用throws关键字在方法的声明中指明要抛出的异常;为了保证程序有效地执行,需要对抛出的异常进行相应的处理。在Java中,如果某个方法抛出异常,既可以在当前方法中进行捕捉,而后处理该异常,也可以将异常向上抛出,交由方法调用者来处理。(3)如果在当前抛出异常的方法中处理异常,可以使用try-catch语句块捕获并处理,否则在方法的声明处通过关键字throw关键字指明要抛出给方法调用者的异常,继续进行下一步操作。
2023-05-12 14:53:10
208
原创 第二篇复习博客
在Java语言中,有两种比较对象的方式,分别为“==”运算符与equals()方法,两者区别在于:“==”比较的是两个对象引用内存地址是否相等,而equals()方法比较的是两个对象的实际内容,所以equals()方法判断出了这两个对象实际上是同一个,而“==”运算符无法做出有效判断,如果两个对象类型的不同,那么equals()方法就会认为两者都不同。在面向对象的思想中,最核心的就是对象,为了在程序中创建对象,首先需要定义一个类,类是对象的抽象,它用于描述一组对象的共同特征和行为。
2023-05-12 14:51:56
47
原创 Java第八章包和内部类
8.1Java类包在java中每定义好一个类,通过java编译器进行编译之后 ,都会生成一个扩展名为.class的文件。当程序的规模逐渐扩大时 系统又是如何管理的呢?Java提供了一个管理类文件的机制 就是类包8.1.1类名冲突Java中每个接口或类都来自不同的类包,无论是Java API中的类与接口还是自定义的类与接口,都需要隶属于某一个类包,这个类包包含了一些类和接口。如果没有包的存在,管理程序中的类名称将是一件非常麻烦的事情。如果程序只由一个类组成,自然不会出现类名重叠的问题,但是随着程序的类
2023-05-12 14:50:56
59
原创 第七次Java作业
System.out.println("水果名称 水果价格(元/千克)水果重量(千克) 包装费(元/千克) 总价 \n"+"——————————————————————————————————————————————————————————————————");//使用对象调用类成员方法输出。System.out.println("信用卡"+cardnumber+"的默认密码为"//使用对象调用类成员方法输出。System.out.println("火车的速度为"+train+"公里/小时");
2023-04-07 13:37:34
82
原创 Java第七章继承、多态、抽象类和接口
Object类是比较特殊的类,它是所有类的父类,是Java类层中的最高层类。如果定义一个图形类,让它处理所有继承该类的对象,根据“向上转型”原则可以使每个继承图形类的对象作为draw方法的参数,然后在draw方法中做一些限定就可以根据不同图形类对象绘制相应的图形。但是,运用向下转型,如果把一个较抽象的类的对象转换为一个较具体的类的对象,这样的转型通常会出现错误。在本实例中分别定义了5个方法,在这5个方法中,前两个方法的参数类型不同,并且方法的返回值类型也不同,所以这两个方法构成重载关系;
2023-04-07 13:34:53
237
原创 第一篇Java基础知识复习博客
在编程过程中经常需要在程序中定义一些符号来标记一些名称如:包名,类名,方法名,参数名,变量名等,这些符号被称为标识符 ,例如包的名字和类的名字,方法名字有着严格的要求,可以包含所有字母, 严格区分大小写下划线和美元符号,不能用数字开头 ,另外不能是java中的关键字的命名全部小写,类名每个单词的首字母都要大写。在switch语句中,使用switch关键字来描述一个表达式,使用case关键字来描述和表达式结果比较的目标值,当表达式的值和某个目标匹配时,会执行对应case下的语句,switch语句的基本语法、
2023-03-28 00:22:27
41
原创 第六章类和对象
6.1面向对象概述c语言是一种结构化的,Java是一种面向对象的随着软件的规模越来越大,结构化语言的弊端也逐渐暴露出来,开发周期长,结果也不尽如人意。这时Java语言变应运而生,也就是面向对象的开发思想。6.1.1对象什么是对象?现实世界中,随处可见的一种事物就是对象.对象是事物存在的实体,如人、书桌、计算机、高楼大厦等。人类解决问题的方式总是将复杂的事物简单化,于是就会思考这些对象都是由哪些部分组成的。通常分为静态部分和动态部分。动态属性,静态属性。
2023-03-28 00:22:22
33
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人