Java 程序结构

Java 程序结构

创建步骤

创建文件夹 并用 idea打开

image-20221021183548594

在test文件夹上 右键 创建模块Test1

image-20221021183716511

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-9jmcP7rp-1666353437897)(C:\Users\User\AppData\Roaming\Typora\typora-user-images\image-20221021185728988.png)]

可见 创建的新模块Test1 和 Test 的图标是相同的

打开文件夹 ,可见 Test1 模块是文件夹形式

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-xFw6FaP5-1666353369179)(C:\Users\User\AppData\Roaming\Typora\typora-user-images\image-20221021190315249.png)]

我们通常在 模块里 创建 程序

在 src 上 右键 新建 软件包 TB

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-EmVmpTEk-1666353369181)(C:\Users\User\AppData\Roaming\Typora\typora-user-images\image-20221021190623232.png)]

在软件包 TB 上新建类

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-XsdVp3N0-1666353369182)(C:\Users\User\AppData\Roaming\Typora\typora-user-images\image-20221021190716106.png)]

新建的类是以 .java 为后缀的

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-acuc2dSv-1666353369183)(C:\Users\User\AppData\Roaming\Typora\typora-user-images\image-20221021192627496.png)]

项目结构

模块

IDEA取消了工作空间的概念,采用了 项目-模块-包 的项目结构,从文件目录的角度来看,项目就是最外层的目录,一个项目中可以放置多个模块

Java中的一个包就是一个类库单元,包内包含有一组类,它们在单一的名称空间之下被组织在了一起。这个名称空间就是包名。可以使用import关键字来导入一个包。例如使用import java.util.*就可以导入名称空间java.util包里面的所有类。所谓导入这个包里面的所有类,就是在import声明这个包名以后,在接下来的程序中可以直接使用该包中的类

类的结构

创建一个类的默认代码

package TB;

public class testClass {

}

包中创建的类 , 会有 package TB;

我们在 testClass 中编写代码(类比于 命名空间), 在 Main 调用

创建main() 方法

package TB;

public class testClass {
    public static void main(String[] args) {
        
        
    } 
}

Java 类中 Main 的结构

一、先说类:

HelloWorld 类中有main()方法,说明这是个java应用程序,通过JVM直接启动运行的程序。

既然是类,java允许类不加public关键字约束,当然类的定义只能限制为public或者无限制关键字(默认的)。

二、再说main()方法

这个main()方法的声明为:public static void main(String args[])。必须这么定义,这是Java的规范。

为什么要这么定义,和JVM的运行有关系。

当一个类中有main()方法,执行命令“java 类名”则会启动虚拟机执行该类中的main方法。

由于JVM在运行这个Java应用程序的时候,首先会调用main方法,调用时不实例化这个类的对象,而是通过类名直接调用因此需要是限制为public static。(类名.main())

对于java中的main方法,jvm有限制,不能有返回值,因此返回值类型为void。

main方法中还有一个输入参数,类型为String[],这个也是java的规范,main()方法中必须有一个入参,类型必须String[],至于字符串数组的名字,这个是可以自己设定的,根据习惯,这个字符串数组的名字一般和sun java规范范例中mian参数名保持一致,取名为args。因此,main()方法定义必须是:“public static void main(String 字符串数组参数名[])”。

Java 的文件介绍

.idea文件夹:存储这个项目的历史记录,版本控制信息

src文件夹里存放你的源代码

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-F377283D-1666353369184)(C:\Users\User\AppData\Roaming\Typora\typora-user-images\image-20221021195112200.png)]

out目录:存放.java文件编译之后得到的字节码文件,也就是说只要你运行src文件夹里面的java程序,就会得到相应的编译后得到的文件存放在out目录里面

iml 文件

iml文件是Intelli)IDEA自动创建的模块文件,用于)Java应用开发,存储一些模块开发相关的信息,
比如一个Java组件,插件组件,Maven组件等等,还可能会存储一些模块路径信息,依赖信息以
及别的一些设置。

bz42Lw3S-1666353369185)]

iml文件是Intelli)IDEA自动创建的模块文件,用于)Java应用开发,存储一些模块开发相关的信息,
比如一个Java组件,插件组件,Maven组件等等,还可能会存储一些模块路径信息,依赖信息以
及别的一些设置。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
Java贪吃蛇游戏的程序结构通常包括以下几个部分: 1. 游戏界面:负责显示游戏画面和用户交互。可以使用Java的GUI库(如Swing或JavaFX)来创建游戏窗口和绘制游戏场景。 2. 蛇的移动:通过监听用户输入(如键盘事件)来控制蛇的移动方向。蛇的移动可以通过定时器或游戏循环来实现,每隔一段时间更新蛇的位置。 3. 食物生成:在游戏场景中随机生成食物,蛇吃到食物后会增加长度。可以使用随机数生成器来确定食物的位置。 4. 碰撞检测:检测蛇是否与自身或游戏边界发生碰撞。如果蛇头与自身或边界相撞,游戏结束。 5. 计分系统:记录玩家的得分,每次吃到食物时增加分数。 6. 游戏状态管理:包括游戏开始、暂停、继续和结束等状态的管理。 以下是一个简单的Java贪吃蛇游戏程序结构的示例: ```java // 导入所需的库 // 定义游戏界面类 public class GameWindow extends JFrame { // 构造函数和界面初始化代码 // 绘制游戏场景的方法 // 监听键盘事件的方法 } // 定义蛇类 public class Snake { // 蛇的属性和构造函数 // 蛇的移动方法 // 蛇的碰撞检测方法 } // 定义食物类 public class Food { // 食物的属性和构造函数 // 食物的生成方法 } // 定义游戏管理类 public class GameManager { // 游戏状态和计分属性 // 游戏开始方法 // 游戏暂停和继续方法 // 游戏结束方法 } // 主程序入口 public class Main { public static void main(String[] args) { // 创建游戏窗口 // 创建游戏管理器 // 启动游戏 } } ``` 这是一个简单的Java贪吃蛇游戏程序结构示例,具体实现可以根据需求进行调整和扩展。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

丁金金

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值