当前位置: 首页 > news >正文

Java超级玛丽小游戏制作过程讲解 第三天 创建并完成常量类02

public class StaticValue {//背景public static BufferedImage bg=null;public static BufferedImage bg2=null;//马里奥向左跳跃public static BufferedImage jump_L=null;//马里奥向右跳跃public static BufferedImage jump_R=null;//马里奥向左站立public static BufferedImage stand_L=null;//马里奥向右站立public static BufferedImage stand_R=null;//城堡public static BufferedImage tower=null;//旗杆public static BufferedImage gan=null;//障碍物,因为数量有很多,所以定义一个列表public static List<BufferedImage> obstacle=newArrayList<>();//马里奥向左跑(同样是有两张图片)public static List<BufferedImage> run_L=new ArrayList<>();//马里奥向右跑public static List<BufferedImage> run_R=new ArrayList<>();//蘑菇敌人(两张走路图像,一张死亡图像)public static List<BufferedImage> mogu =new ArrayList<>();//食人花敌人public static List<BufferedImage> flower =new ArrayList<>();//路径的前缀,方便后续调用public static String path = System.getProperty("user.dir")+"/src/images/";public static void init(){}}

今天我们继续完成常量类的创建!

定义了一个名为`obstacle`的静态变量,它的类型是`List<BufferedImage>`,即一个存储`BufferedImage`对象的列表。

//障碍物,因为数量有很多,所以定义一个列表
public static List<BufferedImage> obstacle=newArrayList<>();

- `obstacle`:这是一个列表(List)类型的变量,用于存储多个障碍物的图像。列表是一种数据结构,可以容纳多个元素,并且具有动态扩展的能力。在这里,`obstacle`列表用于存储多个`BufferedImage`对象,每个对象代表一个障碍物的图像。

- `BufferedImage`:`BufferedImage`是Java中表示图像的类,在这里用于存储障碍物的图像。它提供了多种方法和属性来操作和处理图像。

- `new ArrayList<>()`:这段代码创建了一个空的`ArrayList`实例,并将其赋值给`obstacle`变量。`ArrayList`是Java集合框架中的一种实现,它实现了`List`接口,并提供了一组方法来操作列表。通过`new`关键字和构造函数,我们创建了一个新的空列表。

通过定义`obstacle`变量为`List<BufferedImage>`类型,我们可以在游戏中使用`obstacle`来存储和管理多个障碍物的图像。可以通过列表的方法来添加、删除、获取、遍历等操作,从而方便地处理障碍物相关的图像资源。

这段代码定义了一个名为`path`的静态变量,并将其初始化为包含图片资源文件夹路径的字符串。

//路径的前缀public static String path = System.getProperty("use.dir")+"/src/images/";

具体解释如下:

- `path`:这是一个字符串类型的变量,用于存储图片资源文件夹的路径。在这个例子中,`path`被定义为静态变量,意味着它可以在类的任何地方被访问和使用。

- `System.getProperty("user.dir")`:这是一个Java系统属性,用于获取当前工作目录的路径。在这里,通过调用`System.getProperty("user.dir")`,我们可以获取当前正在执行 Java 程序的工作目录路径。

- `"/src/images/"`:这是一个字符串,表示图片资源文件夹的相对路径,即`src`文件夹下的`images`子文件夹。这里使用斜杠(`/`)作为目录分隔符,在不同操作系统上都可以正确识别。

通过将`path`初始化为当前工作目录路径和图片资源文件夹相对路径的拼接结果,我们可以方便地获得完整的图片资源文件夹的路径。

这个路径可以在后续代码中使用,例如加载图像资源文件时可以直接拼接该路径和文件名,以便找到正确的图片文件并加载到程序中。这样,无论我们将程序放在哪个工作目录下,都能正确访问到图片资源文件夹。

public static void init(){}

(这是一个方法,用于初始化这些图像资源。具体的初始化逻辑需要根据实际情况来实现。)

在Java中,方法声明包括方法的返回类型和方法名。返回类型表示方法在执行完毕后将返回的数据类型。而"void"是一种特殊的返回类型,它表示该方法在执行完毕后不返回任何值。

`public void init()`是一个方法声明,其中:

- `public`是访问修饰符,表示该方法可以从程序的任何地方被访问。

- `void`是返回类型,表示该方法没有返回值。

- `init`是方法名,用于标识这个方法。

加上`void`关键字的作用是指定该方法不返回任何值,它只负责执行某些操作而不会产生结果。这种类型的方法通常被用作初始化方法,在对象创建时执行必要的初始化操作,但不需要返回任何结果。

如果方法有返回值,我们需要使用其他合适的数据类型(如整数、字符串等)来作为返回类型,并且在方法执行完毕后返回对应的值。例如,如果方法返回整数类型的结果,我们可以使用`int`作为返回类型。如果方法没有返回值,我们使用`void`来表示。

声明:小游戏源码来自b站视频(up:编程学习会员Q),本文仅根据源码做知识性补充与注解。如存在不当使用的情况,请随时联系删除。

http://【【Java项目】不到两小时用Java做出超级玛丽小游戏_手把手教你开发游戏_超详细保姆级教程_Java编程_Java游戏开发-Java基础-Java练手项目】https://www.bilibili.com/video/BV1DZ4y1Y73M?p=4&vd_source=70e680aaeedc45cb797fd52fdd25367c

http://www.lryc.cn/news/110822.html

相关文章:

  • ARM微架构
  • Stable Diffusion AI绘画学习指南【本地环境搭建win+mac】
  • Unity 3D ScrollRect和ScrollView回弹问题的解决
  • python编写小程序有界面,python编写小程序的运行
  • 【中断机制】什么是中断?使用中断的原因、注意事项
  • C++20 协程(coroutine)入门
  • 2023.8.6
  • kubernetes网络之网络策略-----Network Policies - Default
  • 奥威BI系统|秒分析,更适合分析大数据
  • 安全作业-Race竞争型漏洞、原型链污染
  • 对微服务网关的一些总结
  • 该选择WPF 还是 Winform?
  • 概念解析 | ChatGPT技术概览
  • 用Rust实现23种设计模式之 代理模式
  • 【nlp pytorch】基于标注信息从句子中提取命名实体内容
  • 图为科技加入深圳市智能交通行业协会 ,打 …
  • 大模型排行榜及相关基础技术
  • Python入门【​try和except结构、常见异常、with上下文管理 、traceback模块和生成异常日志、自定义异常类】(十八)
  • windows脚本获取管理员权限修改host
  • Flask简介与基础入门
  • Stable Diffusion 硬核生存指南:WebUI 中的 GFPGAN
  • IO模型-信号驱动IO
  • 每日一题——回文链表
  • OPENCV C++(一) 二进制和灰度原理 处理每个像素点值的方法
  • Python GUI编程(Tkinter)
  • K8S简介
  • 策略模式——算法的封装与切换
  • c++转换构造,拷贝构造,operator=
  • 支付宝蜻蜓设备abs调试
  • 论memset的时间代价