JAVA全系列 教程
3762个小节阅读:7093.5k
目录
C语言快速入门
JAVA全系列 教程
面向对象的程序设计语言
Python全系列 教程
Python3.x版本,未来主流的版本
人工智能 教程
顺势而为,AI创新未来
大厂算法 教程
算法,程序员自我提升必经之路
C++ 教程
一门通用计算机编程语言
微服务 教程
目前业界流行的框架组合
web前端全系列 教程
通向WEB技术世界的钥匙
大数据全系列 教程
站在云端操控万千数据
AIGC全能工具班
A A
White Night
我们秉承“快速入门、快速实战”的理念,开发这套系列教材;就是希望朋友们在学习过程中,尽快进入实战环节,尽快介入项目,让大家更有兴趣、更有成就感,从而带来更大的学习动力。
如下的小项目,对于第一次接触编程的朋友从理解上会有难度。但是,我们这个项目不在于让大家理解代码本身,而是让大家“重在体验敲代码的感觉”。
注意:
1.为了提高兴趣,听不懂没有关系。很多知识点需要后面再讲解!
2.其中的数学知识,听不懂也没关系。
3.对于有基础的同学,可以照着敲完。
4.对于零基础的同学,看一下即可,可以不敲。如果要敲,也就当做是一个打字练习。
5. 千万不要沉迷在此!敲一敲就可以了,作为兴趣!
【项目】桌球游戏小项目
练习目标:
项目需求:
桌球在球桌中按照一定线路和角度移动,遇到边框会自动弹回。
要求:
即使看不太懂,也要照着敲如下游戏代码,至少5遍。要求所有字符和源文件一致。如果报异常,请细心看所在行和老师代码有何区别。现阶段不需要理解代码的语法功能,只要按照代码结构输入代码,能够经过调试实现代码的正常运行即可。
下面我们将分以下四个步骤来实现桌球游戏:
第一步:创建项目和窗口。
第二步:加载两个图片。
第三步:实现动画,小球沿着水平方向移动并做边界检测。
第四步:实现小球沿着任意角度飞行(会用到初中学习的三角函数,如果忘记了就想想你们的体育老师吧)。
【注】:源码和图片资源下载地址: www.itbaizhan.cn
第一步:
创建项目并拷贝图片:在项目名MyPro01上单击右键,在菜单中依次选择new---Folder,创建一个名称是images的文件夹,并复制两张图片到该目录下。并在src下创建类BallGame.java。
【示例1-3】桌球游戏代码—绘制窗口
ximport javax.swing.JFrame;
public class BallGame extends JFrame {
// 窗口加载
void launchFrame() {
setSize(300, 300);
setLocation(400, 400);
setVisible(true);
}
// main方法是程序执行的入口
public static void main(String[ ] args) {
System.out.println(" 我是尚学堂高淇,这个游戏项目让大家体验编程的快感,"
+ "寓教于乐!");
BallGame game = new BallGame();
game.launchFrame();
}
}
执行结果如图1-41所示:
第二步:
加载两个图片:我们要在BallGame类中添加小球和桌面的路径,并指定小球出现在窗口的的初始位置。然后添加paint方法,加载小球和桌面。代码如示例1-4所示。
先在项目下建立images文件夹,然后将两个图片拷贝到images目录下。
【示例1-4】桌球游戏代码—加载图片
xxxxxxxxxx
import java.awt.*;
import javax.swing.JFrame;
public class BallGame extends JFrame {
//添加小球和桌面图片的路径
Image ball = Toolkit.getDefaultToolkit().getImage("https://www.itbaizhan.com/wiki/images/ball.png");
Image desk = Toolkit.getDefaultToolkit().getImage("https://www.itbaizhan.com/wiki/images/desk.png");
//指定小球的初始位置
double x=100; //小球的横坐标
double y=100; //小球的纵坐标
//画窗口的方法:加载小球与桌面
public void paint(Graphics g){
System.out.println("窗口被画了一次!");
g.drawImage(desk, 0, 0, null);
g.drawImage(ball, (int)x, (int)y, null);
}
//窗口加载
void launchFrame(){
setSize(856,500);
setLocation(50,50);
setVisible(true);
}
//main方法是程序执行的入口
public static void main(String[ ] args){
System.out.println(" 我是尚学堂高淇,这个游戏项目让大家体验编程的快感,"
+ "寓教于乐!");
BallGame game = new BallGame();
game.launchFrame();
}
}
执行结果如图1-42所示:
注意:
由于懒加载问题,有可能出现第一次加载图片无效的情况;请最大化窗口再打开即可。稍后大家完成第三步后,就完全不存在这个问题了。