2024年最全【Java】寒假答辩作品:Java小游戏_寒假小学期java答辩,零基础C C++开发

img
img

网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。

需要这份系统化的资料的朋友,可以添加戳这里获取

一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!

网盘(提取码pzgt):https://pan.baidu.com/s/1-JoHOCKYl_56fKCzhEmMvg

前言 (可直接跳到程序介绍)

前期入门小项目

过年这段时间在家写了两个C语言的大程序,当初在学校立的flag就是用C写一个游戏,一个程序。

游戏完成了:https://www.cnblogs.com/404name/p/12234419.html感觉想法很好,但就是操控有点麻烦。

而另一个程就另作他用了,所以就不介绍了。

之前学过python,但没什么实质性的作品,为此思考寒假其实还是什么都没学到的。仔细思考了很久。

还是决定走java,贴切目前学过的C,看基础部分实在没意思,在家也不是沉得心去琢磨java的基础用

法,就想着直接上项目吧。因为C++面向对象的编程其实我也是没太多接触的,当接手项目时其实自己

也是很懵的。这时候我开始在github上找我能接受理解的小项目,然后正巧在b站

看到了这个教学,然后就开始跟着去了解java的一些操作。

这时候才发现,java其实本质和C还是大不一样的。

几小时能看完的视频,我大概跟着弄了一天(配置环境,查找用法,de莫名其妙的bug);

终于在晚上成功用exe4j打包出了我的第一个简易的JAVA小游戏。

这个大概就是个熄灯问题的游戏,你点击一个地方,他的上下左右中间都会改变一个面,然后要实现全部

翻回来,为此我还临时写了个C语言代码去跑结果。(C语言程序也在游戏包里面)。

前期收获

大概明白了,入门阶段遇到的bug是最手足无措的,编译器界面莫名其妙给你报错,百度还是一些看不懂的名词,哈哈太刺激了。。

我还在教学视频了发现了许多不足,比如他点一个地方会改变上下左右中间5个,然后比如角落他只会

改变 3个 或者 4个,因为他建立的是一维数组,他居然用了将近70行的枚举去枚举每一类。

然而只要把一维转成二维(二维数组本质其实就是一维),然后加个next【5】【2】移动判断,10行

就能解决。但可能是讲给初学者听的,所以就怎么简单怎么来,但,,这里也是我唯一可以体现我学

过编程的地方,后面就全部都是惊讶与自闭了。

我最佩服的面对对象编程就是这个:

Start_click listener = new Start\_click(); // 实例化监听器
JButton reset = new JButton("重置");
reset.addActionListener(listener);

简直了!!把鼠标实体化,然后把鼠标加在一个按钮上,然后只要判断if(e.getSource() == reset)

就能轻松的实现交互,想起来我C语言都是要先另建立一个map储存数据,然后再读取返回,而java直

接短短3行就能搞定。

然后感觉打开了新世界大门,十分佩服以前的人能把底层代码一步步进化到封装的对象和类操作。

再进化下感觉直接说 把监听器加在新键按钮上 编译器都能实现。

这里我学会了好多东西,建立窗口,把对象像拼积木一样搭载在上面,学习ps切割图片,学习如何打包。

当然也遇到了许多困难。

比如很自闭的搞不清包,类,static,public。

一开始也搞不清这个java怎么走的流程(看教学视频“哦,这是主方法,调用另一个java的…哦,我懂了”,然后来写程序时“这特么是什么,这怎么结束啊,这到底怎么走的啊…”)

最神奇的是我搞不清图片怎么操作(后来才搞清)

就这样我大概写完了最初的框架(这里能播放音乐,实现效果,和教学视频的一模一样了。mid格式的音乐,1分钟的歌曲他能给压缩到3kb,神了,然而音质,,绝了)

这里仅仅实现了,我游戏第七关的效果。后来就进入了自闭的自己创造模式了。

后期自创关卡
熄灯问题拓展

就自己会基础操作后,就跃跃欲试。这时候我的文件是 一个mygame.java,一个music.java

我先是尝试在基础原来关卡的基础上改变下熄灯方式,这不就来了几个关卡了嘛。

原先是点一个地方 改变上下左右自身,通过巧妙的控制next数组,就轻松的写出了几个关卡,但问题

来了,怎么跳关卡?要说是在C语言里面,我能拿出好几种方案,但一到这里,我连函数递归啥的都搞

不清了,原因是监听器太混淆视听了,我一个函数只会走一次,但监听器在上面,它就总都会反应

(其实就是我没及时删除监听器),导致切换关卡25个方格变成50个,还弹出了新的窗口,按键还没

用。这就很绝望,然后各种失败后,才搞懂了,应该跨文件调用初始的jf窗口,然后设置静态等等。

但这里也只是开头,马上我把设置的4个关卡发现,4个java是多余的,合并了一下,因为是同类游戏。

新游戏拓展

后来我就在想什么游戏可以搭在这个框架上,显然我想到了以前老手机上的一个游戏九宫格拼图。

直接上图,只要改变一下熄灯规则就变成新游戏了!原本的是按下一个按钮检索上下左右自身是否合

img
img

网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。

需要这份系统化的资料的朋友,可以添加戳这里获取

一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!

正的技术提升。**

需要这份系统化的资料的朋友,可以添加戳这里获取

一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!

  • 3
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值