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 obstacle=newArrayList<>();
    //马里奥向左跑(同样是有两张图片)
    public static List run_L=new ArrayList<>();
    //马里奥向右跑
    public static List run_R=new ArrayList<>();
    //蘑菇敌人(两张走路图像,一张死亡图像)
    public static List mogu =new ArrayList<>();
    //食人花敌人
    public static List flower =new ArrayList<>();
    //路径的前缀,方便后续调用
    public static String path = System.getProperty("user.dir")+"/src/images/";

    public static void init(){

    }

}

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

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

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

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

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

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

通过定义`obstacle`变量为`List`类型,我们可以在游戏中使用`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

你可能感兴趣的:(学做小游戏,java)