Java超级玛丽小游戏制作过程讲解 第六天 绘制背景

这篇具有很好参考价值的文章主要介绍了Java超级玛丽小游戏制作过程讲解 第六天 绘制背景。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

package com.sxt;

import java.awt.image.BufferedImage;

public class BackGround {
    //当前场景要显示的图像
private BufferedImage bgImage=null;

    //记录当前是第几个场景
private int sort;

    //判断是否是最后一个场景
private boolean flag;

public BackGround(){

}


    public BackGround(int sort, boolean flag){
      this.sort=sort;
      this.flag=flag;


      if(flag){
          bgImage=StaticValue.bg2;
      }else{
          bgImage=StaticValue.bg;
      }

}
    public BufferedImage getBgImage() {
        return bgImage;
    }

    public int getSort() {
        return sort;
    }

    public boolean isFlag() {
        return flag;
    }



}

我们新建一个BackGround类。

这段代码是一个名为`BackGround`的Java类,用于表示背景图像和场景。它具有以下属性和方法:

1. `bgImage`:表示当前场景要显示的图像的`BufferedImage`对象。

2. `sort`:记录当前是第几个场景的整数值。

3. `flag`:判断是否是最后一个场景的布尔值。

构造方法:

- 无参数构造方法:创建一个空的背景对象。

- 带参数构造方法:接受一个整数值和一个布尔值作为参数,分别表示场景的排序和是否为最后一个场景。根据参数的不同,设置`bgImage`为相应的背景图像。

提供了以下公共方法(getter):

- `getBgImage()`:获取当前场景要显示的图像。

- `getSort()`:获取当前场景的排序。

- `isFlag()`:判断是否是最后一个场景。

这个类的作用是管理场景的背景图像,根据场景的排序和是否为最后一个场景,选择相应的背景图像进行显示。

private BufferedImage bgImage=null;

    //记录当前是第几个场景
private int sort;

    //判断是否是最后一个场景
private boolean flag;

public BackGround(){

}

这段代码是`BackGround`类的成员变量和无参构造方法。

1. `private BufferedImage bgImage=null;`:这是一个私有成员变量,用于存储当前场景要显示的图像。它的类型是`BufferedImage`,初始化为`null`。

2. `private int sort;`:这是一个私有成员变量,用于记录当前场景的排序。它的类型是整数。

3. `private boolean flag;`:这是一个私有成员变量,用于判断是否是最后一个场景。它的类型是布尔值。

4. `public BackGround(){}`:这是一个无参构造方法。在这个构造方法中,没有任何具体的逻辑实现。它被用作创建`BackGround`对象时的默认构造方法。

这些成员变量和构造方法提供了`BackGround`类的基本组件,其中`bgImage`用于存储图像,`sort`用于记录场景顺序,`flag`用于判断是否是最后一个场景,而无参构造方法用于创建实例对象。

知识小科普:将成员变量设置为`private`是一种封装的实践,它有以下几个原因:

1. 数据隐藏:将成员变量设置为`private`可以隐藏内部实现细节,只暴露必要的方法给外部访问。这样可以提高代码的安全性和可维护性,防止外部直接修改成员变量的值,而通过定义的公共方法进行控制和限制访问。

2. 封装性:将成员变量设置为`private`可以提供更好的封装性。对外部来说,只需通过公共方法来访问和操作成员变量,而不需要了解其具体实现细节。这样在后续的开发和维护过程中,可以更灵活地修改内部实现,而不会对外部代码造成影响。

3. 控制权限:通过将成员变量设置为`private`,可以精确地控制对成员变量的访问权限。只有本类内部的方法才能直接访问和修改这些成员变量,其他外部类或对象无法直接操作。这样可以提高代码的安全性,并减少错误和意外的发生。

综上所述,将成员变量设置为`private`是一种良好的封装实践,可以隐藏实现细节,提供更好的封装性和控制权限,从而保护数据的安全性和代码的可维护性。

public BufferedImage getBgImage() {
    return bgImage;
}

public int getSort() {
    return sort;
}

public boolean isFlag() {
    return flag;
}

Getter方法(也称为访问器方法)是一种常见的面向对象编程的概念,用于获取对象的私有属性值。在这段代码中,getter方法被用来获取`BackGround`类中的私有属性值。

使用getter方法的好处包括:

1. 封装性:getter方法可以提供对私有属性的访问,并同时隐藏了内部实现的细节。通过使用getter方法,将属性的访问限制在类内部,可以避免对属性的直接访问和修改,增强了类的封装性和数据安全性。

2. 可控性:通过getter方法,我们可以在获取属性值时进行额外的逻辑处理。例如,在获取`bgImage`属性值时,可能进行一些图像处理或者返回属性的副本以保持数据的不可变性。这样可以确保属性值的正确性和一致性。

3. 扩展性:如果以后需要对属性的获取逻辑进行修改或添加其他功能,只需要修改getter方法的实现,而不需要修改使用该属性的其他代码。这样可以减少代码的依赖性,提高代码的灵活性和可维护性。

在给定的代码中,我们可以通过调用`getBgImage()`、`getSort()`和`isFlag()`方法,获取`bgImage`、`sort`和`flag`的值,而无需直接访问这些私有属性。这样可以保持`BackGround`类的封装和内部实现的私有性,同时提供了对属性值的安全访问方式。

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

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

到了这里,关于Java超级玛丽小游戏制作过程讲解 第六天 绘制背景的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Java制作“简易王者荣耀”小游戏

    第一步是创建项目 项目名自拟 第二部创建个包名 来规范class 然后是创建类 GameFrame   运行类 运行结果如下:

    2024年02月04日
    浏览(54)
  • 保姆级教你用Python制作超级玛丽游戏(文末赠书)

    名字:阿玥的小东东 学习:Python、C/C++ 主页链接:阿玥的小东东的博客_CSDN博客-pythonc++高级知识,过年必备,C/C++知识讲解领域博主 目录 贪吃蛇游戏 弹珠游戏 超级玛丽(爷青回~)

    2024年02月09日
    浏览(44)
  • 基于Python开发的玛丽大冒险小游戏(源码+可执行程序exe文件+程序配置说明书+程序使用说明书)

    本项目是一套基于Python开发的玛丽冒险小游戏程序,主要针对计算机相关专业的正在做毕设的学生与需要项目实战练习的Python学习者。 包含:项目源码、项目文档等,该项目附带全部源码可作为毕设使用。 项目都经过严格调试,确保可以运行! 本系统的软件开发及运行环境

    2024年02月09日
    浏览(51)
  • Python自制“超级马里奥”小游戏

    ✅作者简介:华为开发者联盟优质内容创作者、CSDN内容合伙人、GitHub专业技术人员🏆 📃个人主页:北雨·寒冰~ 的CSDN博客 🔥系列专栏:PyGame 💬个人格言:书山有路勤为径,学海无涯苦作舟   前言 看效果 1.基础设置(tools部分) 2.设置背景音乐以及场景中的文字(setup部

    2024年01月25日
    浏览(45)
  • python制作小游戏50行代码,用python制作小游戏代码

    大家好,本文将围绕python制作小游戏50行代码小鸟管道展开说明,python制作小游戏都用什么软件是一个很多人都想弄明白的事情,想搞清楚python制作小游戏400行代码需要先了解以下几个事情。 Python非常受欢迎的一个原因是它的应用领域非常广泛,其中就包括游戏开发。而是用

    2024年02月04日
    浏览(56)
  • 编程小游戏制作植物僵尸,编程小游戏教程视频

    大家好,给大家分享一下编程小游戏植物大战僵尸,很多人还不知道这一点。下面详细解释一下。现在让我们来看看! 大家好,今天给大家带来30个 Python 小游戏,喜欢记得点赞、一定要收藏! 文章目录 有手就行 1、吃金币 2、打乒乓 3、滑雪 4、并夕夕版飞机大战 5、打地鼠

    2024年02月22日
    浏览(60)
  • 用Python编写的超级马里奥小游戏(基于Pygame)

    在本文中,我将向您展示如何使用Python编写一个简单的超级马里奥小游戏,使用Pygame库来处理游戏的图形和输入。 首先,我们需要确保已安装Pygame库。您可以使用以下命令在终端或命令提示符中安装Pygame: 一旦安装完成,我们就可以开始编写代码了。下面是完整的Python代码

    2024年01月16日
    浏览(50)
  • 用python做一个小游戏代码,用python制作一个小游戏

    大家好,小编来为大家解答以下问题,如何用python编写一个简单的小游戏,用python做一个小游戏代码,今天让我们一起来看看吧! 今天呢,给大家展示一下Python有趣的小地方,展示给大家看看,我做的小游戏,是否有大家小时候的回忆呢。下面就废话不多说了,给大家展示一

    2024年02月07日
    浏览(58)
  • 用python制作简单的小游戏,用python设计一个小游戏

    这篇文章主要介绍了python编写小游戏详细教程,具有一定借鉴价值,需要的朋友可以参考下。希望大家阅读完这篇文章后大有收获,下面让小编带着大家一起了解一下。 Source code download: 本文相关源码 今天给大家带来十五个Python小游戏,找回童年的同时学习编程还可以摸鱼,

    2024年03月16日
    浏览(95)
  • c++制作小游戏2048

    完整代码来自于爱编程的柚子《【C语言/C++游戏项目】:2048小游戏,超详细教程教会你写这个小游戏。》 这个游戏用到了#include graphics.h,思路比较简单。 首先做出游戏页面,然后画出4*4的格子,利用map二维数组,依据数字{0,2,4,8,16,32,64,128,256,512,1024,2048}找到对应颜色在固定位

    2024年02月13日
    浏览(47)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包