Java项目体验
- 1. JAVA开发环境安装和配置
a) 下载JDK(Java Development Kit)
b) 安装JDK、 JRE(Java Runtime environment)
c) 配置环境变量:
i. path(系统通过path指定的目录寻找相关的可执行文件!)
右键单击我的电脑à属性à高级à环境变量à修改path即可!
ii. classpath(系统通过classpath寻找类文件)
JDK1.5之后,可以不设置!
- 2. Eclipse的使用(目前使用最多的IDE:integrated development environment集成开发环境)
a) 下载
b) 解压即可
- 3. 新建一个JAVA项目
a) New Java Projectà只需要输入project name,回车即可!
- 4. 新建一个JAVA类
a) 右键单击srcànew àClassà键入类名:BallGame
b) 输入代码:
|
public class BallGame { public static void main(String[] args){ System.out.println("我是尚学堂的高淇!"); } } |
c) 运行java程序的三种方式:
i. 右键单击àRun asàjava application
ii. Alt+shift+X,再按J
iii. Ctrl+F11
iv. 单击运行按钮
开始开发我们的小游戏
- 增加窗口
|
import java.awt.*; public class BallGame extends Frame { void launchFrame(){ setSize(500, 300); setLocation(50, 50); setVisible(true); setTitle("尚学堂---张三作品"); setBackground(Color.black); } public static void main(String[] args){ System.out.println("我是尚学堂的高淇!"); new BallGame().launchFrame(); } } |
- 加载图片
|
在项目下新建images文件夹,将sun.jpg拷贝到images下面 |
|
import java.awt.*; public class BallGame extends Frame { Image sun = Toolkit.getDefaultToolkit().getImage("images/sun.jpg"); //这种写法并不好,但是是最简单的! public void paint(Graphics g){ g.drawImage(sun, 100, 100, null); } void launchFrame(){ setSize(500, 300); setLocation(50, 50); setTitle("尚学堂---张三作品"); setBackground(Color.black); setVisible(true); } public static void main(String[] args){ System.out.println("我是尚学堂的高淇!"); new BallGame().launchFrame(); } } |
|
注意:运行时,第一次打开窗口看不到图片。需要将窗口最小化再打开即可看到! |
- 学习画各种曲线、形状、字符串:
|
import java.awt.*; public class BallGame extends Frame { Image sun = Toolkit.getDefaultToolkit().getImage("images/sun.jpg"); //这种写法并不好,但是是最简单的! public void paint(Graphics g){ g.drawImage(sun, 100, 100, null); g.setColor(Color.blue); g.drawLine(100, 100, 200, 200); g.drawRect(50, 50, 100, 80); g.drawOval(50, 50, 100, 80); g.setColor(Color.yellow); g.drawString("游戏开始啦!!", 80, 80); } void launchFrame(){ setSize(500, 300); setLocation(50, 50); setTitle("尚学堂---张三作品"); setBackground(Color.black); setVisible(true); } public static void main(String[] args){ System.out.println("我是尚学堂的高淇!"); new BallGame().launchFrame(); } } |
- 增加动画
|
import java.awt.*; public class BallGame extends Frame { Image sun = Toolkit.getDefaultToolkit().getImage("images/sun.jpg"); //这种写法并不好,但是是最简单的! int x=100; int y=100; public void paint(Graphics g){ System.out.println("窗口被画了一次!"); g.drawImage(sun, x, y, null); x = x+2; } void launchFrame(){ setSize(500, 300); setLocation(50, 50); setTitle("尚学堂---张三作品"); setBackground(Color.black); setVisible(true); new PaintThread().start(); } public static void main(String[] args){ System.out.println("我是尚学堂的高淇!"); new BallGame().launchFrame(); } class PaintThread extends Thread { public void run(){ while(true){ repaint(); //重画窗口! try{ Thread.sleep(40); //40ms 1s=1000ms }catch (Exception e) { e.printStackTrace(); } } } } } |
- 通过我们掌握的数学函数(抛物线、正弦曲线、椭圆等),控制游戏中物体的运动!
|
import java.awt.*; public class BallGame extends Frame { Image sun = Toolkit.getDefaultToolkit().getImage("images/sun.jpg"); //这种写法并不好,但是是最简单的! double x=100; double y=100; double degree = 0; public void paint(Graphics g){ System.out.println("窗口被画了一次!"); g.drawImage(sun, (int)x,(int)y, null); x =150+ 100*Math.cos(degree); y = 150+100*Math.sin(degree); degree = degree + 0.1; } void launchFrame(){ setSize(500, 300); setLocation(50, 50); setTitle("尚学堂---张三作品"); setBackground(Color.black); setVisible(true); new PaintThread().start(); } public static void main(String[] args){ System.out.println("我是尚学堂的高淇!"); new BallGame().launchFrame(); } class PaintThread extends Thread { public void run(){ while(true){ repaint(); //重画窗口! try{ Thread.sleep(40); //40ms 1s=1000ms }catch (Exception e) { e.printStackTrace(); } } } } } |
- 实现台球的运动!
|
import java.awt.*; public class BallGame extends Frame { Image sun = Toolkit.getDefaultToolkit().getImage("images/sun.jpg"); //这种写法并不好,但是是最简单的! double x=100; double y=100; double degree = 3.14/3; public void paint(Graphics g){ System.out.println("窗口被画了一次!"); g.drawImage(sun, (int)x,(int)y, null); x = x+ 10*Math.cos(degree); y = y+10*Math.sin(degree);
if(y>300-30){ degree = - degree; } if(x>500-30){ degree = 3.14-degree; } if(x<0){ degree = 3.14-degree; } if(y<30){ degree = -degree; } } void launchFrame(){ setSize(500, 300); setLocation(50, 50); setTitle("尚学堂---张三作品"); setBackground(Color.black); setVisible(true); new PaintThread().start(); } public static void main(String[] args){ System.out.println("我是尚学堂的高淇!"); new BallGame().launchFrame(); } class PaintThread extends Thread { public void run(){ while(true){ repaint(); //重画窗口! try{ Thread.sleep(40); //40ms 1s=1000ms }catch (Exception e) { e.printStackTrace(); } } } } } |
- 通过键盘来控制物体的运动!
[微软用户1]暂时跟我们的游戏无关,但是一些基本的编程知识!
Java项目体验的更多相关文章
- 【Github开源项目体验】- ZFile 基于 Java 的在线网盘
[Github开源项目体验]- ZFile 基于 Java 的在线网盘 在线云盘.网盘.OneDrive.云存储.私有云.对象存储.h5ai.上传.下载 date: 2022-08-02 addres ...
- JetBrains Fleet初体验,如何运行一个java项目
序言 各位好啊,我是会编程的蜗牛,JetBrains 日前宣布其打造的下一代 IDE Fleet 正式推出公共预览版,现已开放下载.作为java开发者,对于JetBrains开发的全家桶可以说是印象深 ...
- 第1章Java入门体验
第1章Java入门体验 1.java简介和平台应用 Java是sun公司开发出来,现在属于ORACLE公司java分为几个部分:首先是最基础的Java SE部分,这部分是Java的基础知识,主要包括: ...
- Windows Server 2012 R2服务器部署Tomcat JDK、安装Mysql以及将Java项目部署到CVM
我们平时所调试的Java Web 项目需要在本地Eclipse或者MyEclipse当中开发调试,并且部署到Tomcat上来测试,比如说笔者这里用的eclipse添加tomcat服务器, 但是这里发布 ...
- Java项目框架搭建系列(Java学习路线)
前言: 已经工作4年,真是时间飞逝. 其实当你在一间公司工作一两年之后,公司用到的开发框架的基本使用你应该都会了. 你会根据一个现有项目A复制一下搭建出另外一个类似框架的项目B,然后在项目B上进行业务 ...
- 细数Java项目中用过的配置文件(YAML篇)
灵魂拷问:YAML,在项目中用过没?它与 properties 文件啥区别? 目前 SpringBoot.SpringCloud.Docker 等各大项目.各大组件,在使用过程中几乎都能看到 YAML ...
- 从零构建Java项目(Maven+SpringBoot+Git) #02 奥斯丁项目
前两天我说要写个项目来持续迭代,有好多小伙伴都表示支持和鼓励,项目的第一篇这不就来了么~我给项目取了个名字,英文名叫做:austin,中文名叫做:奥斯丁 名字倒没有什么特别的含义,我单纯觉得这个名字好 ...
- eclipse — 导入android项目后识别成java项目的问题及解决
最近在eclipse导入android项目的时候遇到了奇葩问题,再此记录 遇到的问题就是:将完好的android项目导入到eclipse的时候,原本这是一个很容易的事情,但是导入成功后发现,,,靠ec ...
- owner:轻松管理java项目配置
前段时间,一同事说在 github 上“活捉了”一个很有趣的开源项目,它是一个超轻量级的 jar 包,能够帮助你在 java 项目中摒弃样板式的 properties 配置代码,让你轻松自如地管理和使 ...
随机推荐
- 《WAP》团队第三次作业--团队项目的原型设计与开发
一· 目 录 第一部分 · 结 对 成 员 明 细 第二部分 · NABCD 模 型 第三部分 · 原 型 设 计 第四部分 · P S P 第五部分 · 结 对 过 程 第六部分 · 心 得 总 ...
- 【Golang】解决Go test执行单个测试文件提示未定义问题
背景 很多人记录过怎么执行Go test单个文件或者单个函数,但是要么对执行单文件用例存在函数或变量引用的场景避而不谈,要么提示调用了其它文件中的模块会报错.其实了解了go test命令的机制之后,这 ...
- Java 如何抛出异常、自定义异常、手动或主动抛出异常
public static void main(String[] args) { try { throw new Exception("抛出异常"); } catch (Excep ...
- Linux 物理内存 buffer cache
Linux下如何查内存信息,如内存总量.已使用量.可使用量.经常使用Windows操作系统的朋友,已经习惯了如果空闲的内存较多,心里比较踏实.当使用Linux时,可能觉的Linux物理内存很快被用光( ...
- 【转】ArcGIS API for Silverlight/WPF 2.1学习笔记(二)
五.Graphics layer 1.新增Graphics layer Graphics layer用于显示用户自定义绘制的点.线.面图形.使用时确保xaml文件中Graphics layer定义 ...
- Hibernate中的HQL的基本常用小例子,单表查询与多表查询
<span style="font-size:24px;color:#3366ff;">本文章实现HQL的以下功能:</span> /** * hql语法: ...
- 河南省第十一届ACM大学生程序设计竞赛
nyoj-1365-山区修路 内存限制:128MB 时间限制:3000ms 特判: No通过数:4 提交数:4 难度:3 题目描述: SNJ位于HB省西部一片群峰耸立的高大山地,横亘于A江.B水之间, ...
- 第一个 MVC 应用程序(下半部分)
2.4 创建一个简单的数据录入应用程序 本章的其余部分将通过一个简单的数据录入应用程序来考查 MVC 的更多基本特性.本小节打算分步进行,目的是演示 MVC 的运用. B1.设计一个数据模型 在 MV ...
- JavaScript学习总结(十一)——Object类详解
一.Object类介绍 Object类是所有JavaScript类的基类(父类),提供了一种创建自定义对象的简单方式,不再需要程序员定义构造函数. 二.Object类主要属性 1.constructo ...
- spring cloud学习(六)Spring Cloud Config
Spring Cloud Config 参考个人项目 参考个人项目 : (希望大家能给个star~) https://github.com/FunriLy/springcloud-study/tree ...