自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 Java综合项目(二)之拼图游戏

摘要: 本项目是一个基于Java Swing开发的15拼图游戏,实现了图形化界面、游戏逻辑和键盘交互功能。游戏采用4x4网格布局,包含15个数字方块和1个空白块。通过键盘方向键移动方块,目标是将数字按顺序排列。项目特点包括:1)使用JFrame、JLabel等组件构建GUI界面;2)随机算法初始化游戏状态;3)实现KeyListener接口响应键盘操作;4)包含步数统计和胜负判定功能。代码结构清晰,涉及Swing组件、事件监听、二维数组操作等Java核心技术,适合作为GUI开发学习案例。

2025-08-20 10:15:38 886

原创 Java学习day_12之面向对象进阶(抽象类&接口&内部类)

本文介绍了Java中抽象类和接口的核心概念与使用方式。抽象类用于提取共性行为,包含抽象方法(无具体实现)和具体方法,子类必须重写所有抽象方法。接口是完全抽象的,定义方法签名和常量,实现类需重写所有抽象方法。JDK8后接口支持默认方法和静态方法。文章通过代码示例展示了抽象类Animal及其子类Frog的实现,以及Shape接口的Circle和Rectangle实现类。还分析了类与接口的单/多实现关系,以及接口间的继承特性,最后说明了JDK8接口新增的默认方法和静态方法功能。

2025-08-15 20:57:25 1047

原创 Java学习day_11之面向对象进阶(多态&包&final&权限修饰符&代码块)

多态:同类型的对象,表现出的不同形态表现形式: 父类对象 对象名称 = 子类对象;有继承/实现关系有父类引用指向子类对象有方法的重写优点:使用父类型作为参数,可以接收所有子类对象,体现多态的扩展性与便利示例:Student、Teacher继承于Personreturn age;@OverrideSystem.out.println("学生的信息为:" + getName() + ", " + getAge());@Override。

2025-08-14 08:47:12 1118

原创 Java学习day_10之面向对象进阶(static&继承)

本文介绍了Java中static关键字和继承的概念与应用。static可以修饰成员变量和方法,静态变量被所有对象共享,属于类而非对象;静态方法常用于工具类,调用时推荐使用类名。工具类通常私有化构造方法,方法设为静态。注意事项包括静态方法只能访问静态成员,且无this关键字。继承是面向对象的重要特性,子类通过extends继承父类,可复用和扩展父类功能。main方法的各修饰符含义也被重新解释,如static使JVM可直接调用而无需实例化。

2025-08-13 11:05:49 1191

原创 Java综合项目(一)之学生管理系统

本文介绍了基于Java的学生管理系统实现,包含登录界面和学生信息管理界面。系统采用ArrayList存储数据,设计了Student和User两个JavaBean类,分别管理学生信息和用户账户。登录界面提供注册、登录和忘记密码功能,通过严格验证确保用户名唯一性(3-15位字母数字组合)、密码一致性、身份证(18位规范格式)和手机号(11位数字)的有效性。学生管理界面实现增删改查功能,用户需登录成功后方可访问。系统采用面向对象设计,通过Scanner实现用户交互,switch-case处理操作选择,各种验证方法

2025-08-10 21:54:53 561

原创 Java学习day_09之ArrayList集合

本文介绍了Java中ArrayList集合的基本使用方法和常见操作。主要包括:1) ArrayList的概述和创建方式,使用泛型限定数据类型;2) 常用成员方法如添加、删除、修改、查询元素等;3) 三种实践练习:字符串遍历、学生对象遍历和手机对象筛选。通过代码示例详细演示了如何创建ArrayList、操作元素以及遍历集合,特别是处理自定义对象时的应用场景。文章还展示了如何通过Scanner类实现动态输入,以及如何定义方法返回满足条件的对象集合。

2025-08-08 21:29:52 430

原创 Java练习(五)

(i 从 length-1 到 0)逐个获取字符并拼接至新字符串返回拼接完成的反转字符串4.最后输出反转后的字符串结果。

2025-08-07 18:32:58 931

原创 Java学习day_08之字符串

本文介绍了Java中字符串相关的核心知识,包括String、StringBuilder和StringJoiner三个类的使用。首先讲解了String类的不可变特性,以及两种创建方式(直接赋值和构造方法)。重点分析了字符串比较的注意事项,==比较地址值,equals()比较内容。然后详细介绍了可变字符串类StringBuilder的高效操作方法,如append()和reverse()。最后讲解了Java 8新增的StringJoiner工具类,它提供了更便捷的字符串拼接功能,支持自定义分隔符和前后缀。这些知识

2025-08-07 18:03:33 729

原创 Java练习(四)

本文介绍了一个文字版格斗游戏的Java实现方案。游戏采用回合制战斗,包含角色系统(姓名、血量、性别、随机长相)和战斗系统(6种武侠招式攻击模板+8级渐进伤害反馈)。攻击流程通过随机选择招式描述、生成1-20点伤害、更新血量并匹配对应受伤描述来实现。战斗持续到一方血量为0时结束,并显示KO信息。代码使用Role类封装角色属性和行为,包含随机生成长相、攻击逻辑和血量状态检测等功能,通过条件判断实现不同伤害程度的文字反馈,最终输出完整的战斗过程记录。

2025-08-05 21:48:31 500

原创 Java学习day_07之面向对象

本文介绍了Java面向对象编程的核心概念:类和对象、封装、构造方法以及标准JavaBean类。类作为对象的模板,包含成员变量和方法;对象是类的具体实例。封装通过private修饰符保护数据,提供getter/setter方法控制访问。构造方法用于初始化对象,分为无参和有参两种。标准JavaBean类需遵循命名规范、使用private修饰变量、提供构造方法和getter/setter方法等规则。这些概念是Java面向对象编程的基础,有助于提高代码的安全性和可维护性。

2025-08-04 21:34:47 1361

原创 Java练习(三)

在唱歌比赛中,有6名评委给选手打分,分数范围是[0-100]之间的整数。选手的最后得分为:去掉最高分、最低分后的4个评委的平均分,请完成上述过程并计算出选手的得分。按照如下规则计算机票价格:旺季(5-10月)头等舱9折,经济舱8.5折,淡季(11月到来年4月)头等舱7折,经济舱6.5折。规则如下:先得到每位数,然后每位数都加上5,再对10取余,最后将所有数字翻转,得到一串新数,解密相反。某系统的数字密码(大于0),比如1983,采用加密方式进行传输。判断101-200之间有多少个质数,并输出所有质数。

2025-08-03 20:15:00 558

原创 Java学习day_06之方法

1.简单的定义与调用public static void 方法名(){方法体;//调用方法案例playGame();System.out.println("选人物");System.out.println("选地图");System.out.println("选难度");System.out.println("开始游戏");System.out.println("游戏结束");2.带参数的定义与调用public static void 方法名(参数1,参数2,...){方法体;

2025-08-02 18:04:26 681

原创 Java练习(二)

需求:已知数组元素为{33,5,22,44,55},请找出数组中最大值并打印在控制台。需求:定义一个数组,存入1,2,3,4,5。按照要求交换索引表对应的元素。需求:定义一个数组,存入1~5。要求打乱数组中所有数据的顺序。需求:生成10个1~100之间的随机数存入数组。3)统计有多少个数据比平均值小。交换前:1,2,3,4,5。交换后:5,4,3,2,1。练习3:交换数组中的数据。练习4:打乱数组中的数据。2)求所有数据的平均数。练习2:遍历数组求和。1)求出所有数据的和。

2025-08-01 18:03:40 282

原创 Java学习day_05之数组

1.数组介绍数组:是一种容器,可以用来存储同种数据类型的多个值注:数组容器在存储数据的时候,需要结合隐式转换考虑例:int类型的数组容器(byte short int)double类型的数字容器(byte short int long float double)建议容器的类型与存储的数据类型一致2.数组初始化静态初始化:手动指定数组元素,系统会根据元素个数,计算出数组的长度。完整格式:数据类型[] 数组名 = new 数据类型[]{元素1,元素2,元素3,…};

2025-08-01 18:03:19 584

原创 Java练习(一)

需求:当数字是包含7或者是7的倍数时都要说过,使用程序在控制台打印出1-100之间的满足逢七必过规则的数据。需求:键盘录入一个大于等于2的整数x,计算并返回x的平方根。结果只保留整数部分,小数部分将被舍去。需求:键盘录入一个正整数x,判断该整数是否为一个质数。需求:程序自动生成一个1-100之间的随机数字。练习4:猜数字小游戏。前置知识:获取随机数。

2025-07-31 17:46:58 120

原创 Java学习day_04之判断与循环

例如,当需要判断多个独立条件或范围时,if 语句更直观。switch 语句适合处理离散值的匹配,尤其是当条件为固定常量(如枚举值或状态码)时。switch 是一种多分支选择结构,用于根据表达式的值选择执行不同的代码块。for循环用于重复执行一段代码,通常用于遍历数组、集合或执行固定次数的操作。多分支结构用于处理多个互斥条件,依次判断条件并执行首个成立的代码块。代码按照从上到下的顺序依次执行,每条语句执行一次且仅执行一次。单分支结构用于条件成立时执行特定代码块,不成立则跳过。3.多重if-else阶梯结构。

2025-07-30 21:29:50 517

原创 Java学习day_03之运算符

1.当"+“操作中出现字符串时,这个”+“是字符串连接符,而不是算术运算符,会将前后的数据进行拼接,并产生一个新的字符串。如果值为true,表达式1的值就是运算结果;强制转换:如果把一个取值范围大的数值,赋值给取值范围小的变量,是不允许直接赋值的。规则2:byte、short、char三种类型的数据在运算的时候,都会直接先提升为int,再进行运算。规则1:取值范围小的和取值范围大的进行运算,小的会先提升为大的,再进行运算。单独使用:++和–无论是放在变量的前边还是后边,单独写一行结果都是一样的。

2025-07-29 21:33:21 527

原创 Java学习day_02之Java基础概念

数据类型:限定了变量能存储数据的类型,例:int(整数),double(小数)关键字:被Java赋予了特定含义的英文单词,字母全部小写。class关键字:表示定义一个类,后面跟随类名。把右边的数据赋值给左边的变量。组成:数据类型 变量名 = 数据值;变量名:存储空间的名字,便于以后使用。数据值:真正存在变量中的数据。注释:对程序的解释说明。

2025-07-26 20:58:00 241

原创 Java学习day_01之CMD命令与Java入门

三者关系:JDK > JRE > JVM,即 JDK 包含 JRE,JRE 包含 JVM。作用:JVM 是 Java 实现 “一次编写,到处运行” 的关键,因为相同的字节码在不同的 JVM 上都能运行。定义:JRE 是运行 Java 程序的最小环境,它包含 JVM、Java 核心类库以及其他支持文件。特点:JVM 是 Java 运行时的核心,不同的操作系统需要安装对应的 JVM。定义:JDK 是 Java 开发工具包,它是开发 Java 程序的核心工具集。运行:java也是JDK提供的工具,用来运行代码。

2025-07-25 20:58:10 429

空空如也

空空如也

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

TA关注的人

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