自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 Java学生管理系统,数据库版作业

一、作业题目二、运行步骤三、运行结果

2023-12-12 19:39:45 388

原创 Java第二十一章网络通信

一般来说,TCP对应的是可靠性要求高的应用,而UDP对应的则是可靠性要求低、传输经济的应用。传输控制协议(TCP):TCP(传输控制协议)定义了两台计算机之间进行可靠的传输而交换的数据和确认信息的格式,以及计算机为了确保数据的正确到达而采取的措施。下面是简单的单向通信的实例。在TCP/IP网络体系结构中,TCP(传输控制协议,Transport Control Protocol、UDP(用户数据报协议,User Data Protocol)是传输层最重要的两种协议,为上层用户提供级别的通信可靠性。

2023-12-07 11:29:34 1022

原创 Java利用UDP实现简单群聊

/发送文本框,用来显示当前用户要发送的文本。// 使用socket向群组发送,socket的send()方法需要两个参数:DatagramPacket、端口号。// 本方法完成接收服务器消息的后续工作-在文本框中显示服务器消息,子类的receive()方法在接收服务器消息后可以调用本方法。// 使用接收文本框创建滚动窗口(把文本框添加到了滚动窗口中),总是显示纵向滚动条,永不显示横向滚动条。// 在本方法中启动监听服务器线程,调用本类receiveText(String)把接收到的文本显示出来。

2023-12-07 11:25:45 1153

原创 Java利用UDP实现简单的双人聊天

centerTextArea.append(p.getAddress().getHostAddress()+":"+((InetSocketAddress)p.getSocketAddress()).getPort()+"对我说:\n"+new String(p.getData(),0,p.getLength())+"\n\n");JOptionPane.showMessageDialog(this, "端口号被占用,请重新设置端口");stateLB.setText("已在"+port+"端口监听");

2023-12-07 11:24:42 1451 1

原创 Java利用TCP实现简单的双人聊天

/-------------------客户器端读取回复信息----------------------//System.out.println("服务器端启动,等待连接--------------");System.out.println("这是从客户端接收的数据:" + info);//-------------------服务器端回复信息----------------------//// System.out.println("信息发送成功"+str);//3.通过Socket获取输入流。

2023-12-07 11:23:45 1134

原创 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-28 12:39:54 1057 1

原创 第二十章:多线程

public static void init(JFrame frame, int width, int height) { // 初始化程序界面的方法。Thread t = new Thread(new Runnable() { // 创建匿名线程对象。i++) {//继承重写方法。private static Color getC() { // 获取随机颜色值的方法。

2023-11-28 12:37:25 381

原创 java游戏制作-飞翔的鸟游戏

if (state == START) { // 如果是开始状态 单击转换运行。

2023-11-23 17:38:28 67

原创 java游戏制作-拼图游戏

首先创建一个Java项目命名为puzzlegame。先在Java项目中创建图片文件夹,将图片导入其中。再在src中创建一个包,用来制作主界面。

2023-11-19 18:04:58 214

原创 俄罗斯方块

null) { //判断该位置是否有方块。String[] show_state= {"P[暂停]","C[继续]","R[重开]"};//重新开始游戏,把游戏状态变为正在游戏。//判断是否越界或者重合,如果是则右移恢复原来的状态,不是则左移。//判断是否越界或者重合,如果是则左移恢复原来的状态,不是则右移。//判断,当前游戏状态在游戏中时,每隔0.5秒下落。//判断方块是否出界,出界返回true,没有则返回false。//判断游戏是否结束,结束返回true,继续返回false。

2023-11-16 20:38:10 104

原创 俄罗斯方块

null) { //判断该位置是否有方块。String[] show_state= {"P[暂停]","C[继续]","R[重开]"};//重新开始游戏,把游戏状态变为正在游戏。//判断是否越界或者重合,如果是则右移恢复原来的状态,不是则左移。//判断是否越界或者重合,如果是则左移恢复原来的状态,不是则右移。//判断,当前游戏状态在游戏中时,每隔0.5秒下落。//判断方块是否出界,出界返回true,没有则返回false。//判断游戏是否结束,结束返回true,继续返回false。

2023-11-16 20:37:27 93

原创 第十九章总结:Java绘图

/ 设置窗体关闭模式。

2023-11-15 20:45:03 76

原创 第十八章:Swing自述

System.out.println(c1.getText() + "按钮选中状态:" + c1.isSelected());System.out.println(c2.getText() + "按钮选中状态:" + c2.isSelected());System.out.println(c3.getText() + "按钮选中状态:" + c3.isSelected());

2023-11-08 17:42:10 96

原创 第十六章总结:反射和注解

System.out.println("返回值为:" + method.invoke(demo, "7", 5));System.out.println("返回值为:" + method.invoke(demo, 168));System.out.println("返回值为:" + method.invoke(demo, parameters));System.out.println("名称为:" + field.getName());

2023-10-27 09:57:05 62

原创 第十五章总结

FileReader类顺序地读取文件,只要不关闭流,每次调用read()方法就顺序地读取源中其余内容,直到源的末尾或流被关闭。mark(int readlimit)方法:在输入流的当前位置放置一个标记,readlimit参数告知此输入流在标记位置失效之前允许读取的字节数。返回0~255的int字节值。DataOutputStream(OutputStream out):创建一个新的数据输出流,将数据写入文件的方法。read(byte[] b):从输入流中读入一定长度的字节,并以整数的形式返回字节数。

2023-10-20 14:35:25 78

原创 第14章总结:lambda表达式与处理

list.add(new Employee("老张", 40, 9000, "男", "运营部"));list.add(new Employee("大刚", 32, 7500, "男", "销售部"));list.add(new Employee("翠花", 28, 5500, "女", "销售部"));list.add(new Employee("小马", 21, 3000, "男", "开发部"));list.add(new Employee("老王", 35, 6000, "女", "人事部"));

2023-10-12 23:14:18 152

原创 第十七章:Java连接数据库jdbc(java和myql数据库连接)

/传入参数:1.哪个数据库2.哪个用户3.密码。//用什么技术,主机地址,端口号:所有数据库默认端口号3306,需要连接的数据库名称。//第六步:关闭连接释放资源:java存在自动回收资源,不关闭会占空间。//第三步:获取statment对象,准备。//第四步:执行sql语句返回结果集。//第五步:遍历结果集。//第一步:注册驱动。//第二步:获取连接。最后在主函数直接调用。

2023-10-06 17:12:39 72

原创 学生选课系统基础版

使用set中的contains方法,set中调用contains(obj)方法,contains方法的实现机制:先调用object中的hashcode方法,再调用object中的equals方法。// 定义数组存放要删除的值。List中的contains()方法借Map中的containsValue()方法调用equals()方法来进行比较。

2023-09-24 18:36:58 50

原创 第十三章总结

在泛型机制中,提供了类型通配符,其主要作用是在创建一个泛型类对象时限制这个泛型类的类型实现或继承某个接口或类的子类。JDK中的集合接口、集合类都被定义了泛型,其中List<E>的泛型E实际上就是element元素的首字母,Map<K,V>的泛型K和V就是key键和value值的首字母。默认可以使用任何类型来实例化一个泛型类对象,但Java中也对泛型类实例的类型作了限制。(1)泛型的类型参数只能是类类型,不可以是简单类型,如A<int>这种泛型定义就是错误的。其中,T是泛型的名称,代表某一种类型。

2023-09-24 18:36:12 42

原创 用Java实现扑克牌游戏——简易炸金花

首先新建洗牌后的牌库集合对象与揭牌人的集合对象,然后通过add()方法将揭牌得到的扑克牌添加到对应的揭牌人集合对象中。最后返回改变后的牌库集合对象。首先新建对象,并进行买牌操作,输出所有的52张扑克牌,再进行洗牌并输出结果,然后进行揭牌操作,最后通过for循环输出揭牌的结果,并输出除揭牌已获取的扑克牌外剩余的扑克牌。首先给予扑克牌4种不同的花色,再为所有扑克牌创建新的扑克牌集合对象,通过两次for循环获取除大小王外的其他52张牌,并将其添加到该集合中,最后返回所有52张扑克牌。二.代码(注释)呈现。

2023-09-15 20:23:30 104

原创 十二章总结

(2)TreeSet类不仅实现了Set接口,还实现了java.util.SortedSet接口,因此TreeSet类实现的Set集合在遍历集合时按照自然顺序递增排序,也可以按照指定比较器递增排序,即可以通过比较器对用TreeSet类实现的Set集合中的对象进行排序。常用的集合有List集合、Set集合和Map集合,其中List集合与Set集合继承了Collection接口,各接口还提供了不同的实现类。数组的长度是固定的,集合的长度是可变的:数组用来存放基本类型的数据,集合用来存放对象的引用。

2023-09-15 20:22:08 31

原创 学习笔记——Java入门第三季

代码中的 “yyyy-MM-dd HH:mm:ss” 为预定义字符串, yyyy 表示四位年, MM 表示两位月份, dd 表示两位日期, HH 表示小时(使用24小时制), mm 表示分钟, ss 表示秒,这样就指定了转换的目标格式,最后调用 format() 方法将时间转换为指定的格式的字符串。Math 类位于 java.lang 包中,包含用于执行基本数学运算的方法, Math 类的所有方法都是静态方法,所以使用该类中的方法时,可以直接使用类名.方法名,如: Math.round()

2023-09-09 18:28:22 27

原创 学习笔记——Java入门第二季

再用String调用format()方法,将有占位符的字符串变量和String类实例的对象传递到format方法中。方法(Method)是用于完成特定功能的整段代码。通过对一段可以实现特定功能的代码进行简单的包装,形成方法,让程序可以反复去调用同一个方法,来反复实现这个功能。解释:因为w24h()方法返回的就是一个List类型的数据集合,所以,返回的数据集合可以实例化List<HourWeather> 的对象。多态:同一个行为具有多个不同的表现形式或形态的能力,根据输入的内容不同,去产生不同的接口实现。

2023-09-09 18:26:50 25

原创 学习笔记 - Java入门第一季

该段代码的含义是:如果 score 值大于90,则奖励一个 Iphone 5s ,当 score 值小于等于 90 时,先判断 score 是否大于 70 ,如果 score 是介于 70--90 之间,则奖励一个红米,如果成绩小于等于 70 ,则罚做 500 个俯卧撑。在上面的代码中创建一个长度为 2 的数组,因此数组下标范围是 0 到 1 ,而程序中下标出现了 2 ,即 scores[2] ,超过了范围,造成数组访问越界。三种循环语句可以自身嵌套,也可以相互嵌套,最常见的就是二重循环。

2023-09-09 18:23:49 32

原创 第十一章内容与总结

System.out.println("3.14是否为非数字值:"+Double.isNaN(dNum.doubleValue()));System.out.println("值为3.14的Double对象与3.14的比较"+dNum.equals(3.14));System.out.println("3.14转换为int的值为"+dNum.intValue());System.out.println("3.14转换为十六进制为:"+Double.toHexString(dNum));

2023-05-17 14:58:42 50

原创 第十章内容与总结

在Java中,字符串必须包含在一对双引号(" ")之间,称之为字符串常量。这些字符串常量可以是系统能够显示的任何文字信息,甚至可以是单个字符。在Java中,字符串必须包含在一对双引号(" ")之间,称之为字符串常量。如果将字符串同其他数据类型进行连接,会将其他数据类型的数据直接转换成字符串。对于已声明的字符串,可以对其进行相应的操作。可以对多个字符串进行连接,也可使字符串与其他数据类型进行连接。·str:任意有效的标识符,表示是字符串变量的名称。·str:任意有效的标识符,表示是字符串变量的名称。

2023-05-06 15:12:19 41

原创 第九章内容与总结

(3)如果在当前抛出异常的方法中处理异常,可以使用try-catch语句块捕获并处理,否则在方法的声明处通过throws关键字指明要抛出给方法调用者的异常,继续进行下一步操作。完整的异常处理语句一定要包含finally语句,无论程序中有无异常发生,并且无论之前的try-catch语句块是否顺利执行完毕,都会执行finally语句。在Java中,提供了一些异常类用来描述经常发生的异常。在Java中,如果某个方法抛出异常,既可以在当前方法中进行捕捉,而后处理该异常,也可以将异常向上抛出,交由方法调用者来处理。

2023-04-28 15:08:47 38

原创 第八章总结

Java中每个接口或类都来自不同的类包,无论是Java API中的类与接口还是自定义的类与接口,都需要隶属于某一个类包,这个类包包含了一些类和接口。如果没有包的存在,管理程序中的类名称将是一件非常麻烦的事情。在使用import关键字时,可以指定类的完整描述,如果为了使用包中更多的类,可以在使用import关键字指定时在包指定后加上*,这表示可以在程序中使用该包中所有类。一个完整的类名需要包名与类名的组合,每个类都隶属于一个类包,只要保证同一类包中的类不同名,就可以有效地避免同名类冲突的情况。

2023-04-21 08:25:31 37

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

所谓类的封装是指在定义一个类时,将类中的属性私有化,即使用private关键字来修饰,私有属性只能在它所在类中被访问,如果外界想要访问私有属性,需要提供一些使用public修饰的公有方法,其中包括用于获取属性值的getxx方法和设置属性值的setxx方法。在Java中,定义在类中的变量被称为成员变量,定义在方法中的变量被称为局部变量。3.在Java中,多层继承是可以的,即一个类的父类可以再去继承另外的父类,例如C类继承自B类,而B类又可以去继承A类,这时,C类也可称作A类的子类。例如下面这种情况是允许的。

2023-04-21 08:20:23 54

原创 第七章抽象类与接口的总结

正如EventListener接口,这是由几十个其他接口扩展的Java API,你可以使用一个标记接口来建立一组接口的父接口。这种情况是标记接口最初的目的,实现标记接口的类不需要定义任何接口方法(因为标记接口根本就没有方法),但是该类通过多态性变成一个接口类型。以上的程序片段是合法定义的子接口,与类不同的是,接口允许多继承,而 Sports及 Event 可以定义或是继承相同的方法。接口则包含类要实现的方法。类在实现接口的方法时,不能抛出强制性异常,只能在接口中,或者继承接口的抽象类中抛出该强制性异常。

2023-04-07 11:44:46 82

原创 Java的第七次作业

9.人工包装的水果与普通水果的价格。4.计算机械钟和石英手表的时间。5.多功能参数(方法的重载)6.输出圆形和矩形的面积。7.定义人类的介绍方式。1.修改手机默认语言。

2023-04-07 11:41:18 91

原创 第七章总结

是Object类定义的方法,它会返回对象执行时的Class实例,然后使用此实例调用getName()方法可以取得类的名称。两者的区别在于:“==”比较的是两个对象引用内存地址是否相同,而equals()方法比较的是两个对象的实际内容。区分:子类重写父类的方法——返回参数相同,方法名相同,传入参数相同,只有方法体不同。Object类是比较特殊的类,它是所有类的父类,是Java类层中最高层类。方法的重写:返回参数相同,方法名相同,传入参数相同,方法体不同。所有类的构造方法第一行都有一个隐藏的“super();

2023-04-04 08:15:21 27

原创 第七章课堂,对象类型转换

区分:子类重写父类的方法——返回参数相同,方法名相同,传入参数相同,只有方法体不同。在谈到参数个数可以确定两个方法是否具有重载关系时,会想到定义不定长参数方法。不定长参数语法:返回值 方法名(参数数据类型...参数名称)例:Dog a = (Dog) new Animal();例:Animal a = new Dog();将子类对象赋值给父类引用。将父类对象赋值给父类引用。需要进行强制类型转换。方法名相同,参数不同。

2023-04-04 08:10:51 34

原创 Java类的继承

在实际的应用中通常重写toString()方法,为对象提供一个特定的输出模式。是Object类定义的方法,它会返回对象执行时的Class实例,然后使用此实例调用getName()方法可以取得类的名称。return "我叫" + name +",今年” + age+"岁。Object类是比较特殊的类,它是所有类的父类,是Java类层中最高层类。方法的重写:返回参数相同,方法名相同,传入参数相同,方法体不同。可以将getClass()方法与toString()方法联用。2.toString()方法。

2023-04-01 20:54:28 67

原创 Java对象类型的转换

区分:子类重写父类的方法——返回参数相同,方法名相同,传入参数相同,只有方法体不同。在谈到参数个数可以确定两个方法是否具有重载关系时,会想到定义不定长参数方法。不定长参数语法:返回值 方法名(参数数据类型...参数名称)例:Dog a = (Dog) new Animal();例:Animal a = new Dog();将子类对象赋值给父类引用。将父类对象赋值给父类引用。需要进行强制类型转换。方法名相同,参数不同。

2023-04-01 20:53:20 245

原创 第一次复习总结

(4)在为一个float类型的变量赋值时需要注意一点,所赋值的后面一定要加上字母”F“(或 ”f“),而为double类型的变量赋值时,可以在所赋值的后面加上字符”D“(或”d“),也可不加。2.下面的代码中,第一行代码的作用是定义了两个变量x和y,也就相当于分配了两块内存单元,在定义变量的同时为变量x分配了一个初始值0,而变量y没有分配初始值。3.第二行代码的作用是为变量赋值,在执行的第二行代码时,程序首先取出变量x的值,与3相加后,将结果赋值给变量y,此时变量x和y在内存中的状态发生了变化。

2023-03-27 20:06:50 26

原创 Java第八次作业

题目: 代码: 结果:

2023-03-27 20:05:58 41

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

(4)在为一个float类型的变量赋值时需要注意一点,所赋值的后面一定要加上字母”F“(或 ”f“),而为double类型的变量赋值时,可以在所赋值的后面加上字符”D“(或”d“),也可不加。2.下面的代码中,第一行代码的作用是定义了两个变量x和y,也就相当于分配了两块内存单元,在定义变量的同时为变量x分配了一个初始值0,而变量y没有分配初始值。3.第二行代码的作用是为变量赋值,在执行的第二行代码时,程序首先取出变量x的值,与3相加后,将结果赋值给变量y,此时变量x和y在内存中的状态发生了变化。

2023-03-27 20:04:25 47

原创 第六次作业

System.out.println("学生编号\t语文成绩\t数学成绩\t英语成绩\t平均成绩\t总成绩");System.out.println(" 简单客车售票系统" + "\n 9排4列的大巴车开始售票");System.out.println("请输入第" + (i + 1) + "个学生的编号:");System.out.println("请输入语文成绩:");System.out.println("请输入数学成绩:");System.out.println("请输入英语成绩:");

2023-03-18 22:19:49 115

原创 数组排序算法

就是以相反的排序,把原有的数组内存重新排序。反转排序的基本思想比较简单,把数组的最后1个元素和第1个元素替换,倒数第2个元素与第2个元素替换,以此类推。它排序数组元素的过程总是在将小的数往上放,较大的竖往后放类似于水中气泡往上升的动作,所以称为冒泡排序。System.out.println("数组反转后内容:");选择排序也叫直接排序,它的排序速度比冒泡排序要快一些。// TODO 自动生成的方法存根。// TODO 自动生成的方法存根。// TODO 自动生成的方法存根。

2023-03-18 19:43:12 50

空空如也

空空如也

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

TA关注的人

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