柚子的JAVA学习笔记
Day01:
eclipse的基本使用:
一、在打开eclipse时,会提示选择一个目录,该目录为eclipse的工作空间,及代码的存储位置,目录中最好不要出现中文
二、使用eclipse创建一个Java工程
1.打开eclipse
2.File --> New --> java project
3.选中Src 右键 --> new --> package
4.选择package --> new --> class
这里不建议先创建class
Java的数据类型:
1.基本数据类型
整型: byte short int long
浮点: float double
字符: char
布尔: boolean
2.引用数据类型
概念
null 表示引用为空,没有引用具体的对象
项目实战—飞机大战
基本框架:创建窗口 添加控件 事件
1.创建窗口
2.设置窗口大小
3.设置位置(居中)
4.添加控件(英雄机、敌机、小蜜蜂…)
5.设置定时器
例如美术生画画
1.创建新类(MyPanel)继承JPanel
2.创建画笔(Graphics g)
3.加载素材(Image)
4.设置定时器(Timer)
部分代码如下
package shootgame;
import java.awt.Graphics;
import java.awt.Image;
import java.io.File;
import java.io.IOException;
import java.util.Timer;
import java.util.TimerTask;
import javax.imageio.ImageIO;
import javax.swing.JFrame;
import javax.swing.JPanel;
//Ctrl+Shift+o
//定义自己的画板类继承系统的画板类
class MyPanel extends JPanel{
//static修饰的只保留一份 图片资源只需要加载到内存一次
static Image background;
static Image hero1;
static Image airplane;
static Image bee;
//静态语句块 加载资源 视频 图片
static{
try {
background = ImageIO.read(new File("E:\\JAVA_学习\\fly\\pic\\fly\\background.png"));
hero1 = ImageIO.read(new File("E:\\JAVA_学习\\fly\\pic\\fly\\hero1.png"));
airplane = ImageIO.read(new File("E:\\JAVA_学习\\fly\\pic\\fly\\airplane.png"));
bee = ImageIO.read(new File("E:\\JAVA_学习\\fly\\pic\\fly\\bee.png"));
} catch (IOException e) {
e.printStackTrace();
}
}
//表示小蜜蜂的位置
int x = 0;
int y = 0;
//定时器
Timer timer = new Timer();//定时器
//给定时器添加任务 每隔多长时间执行某个操作
public void run(){
//匿名内部类 这个类没有名字
TimerTask task = new TimerTask(){
public void run(){
x++;
y++;
repaint();//重新绘制
}
};
//task:执行的操作 delay:多久之后开始执行 period:时间间隔 单位是毫秒
timer.schedule(task,200,50);
//time.cancel();//取消定时任务
//TimerTask 抽象类 接口 都不能实例化对象
}
//鼠标事件
//要在画纸上作画
public void paint(Graphics g){//Graphics g 画笔
g.drawString("hello world!",20,20);
g.drawLine(20,50,50,100);
g.drawImage(background,0,0,null);
g.drawImage(hero1,200,600,null);
//敌机
g.drawImage(airplane,150,0,null);
g.drawImage(airplane,50,30,null);
g.drawImage(airplane,140,100,null);
g.drawImage(airplane,200,120,null);
g.drawImage(airplane,300,100,null);
g.drawImage(airplane,350,120,null);
//小蜜蜂
g.drawImage(bee,x,y,null);
}
}
public class ShootGame {
public static void main(String[] args){
JFrame frame = new JFrame();
frame.setSize(MyPanel.background.getWidth(null),MyPanel.background.getHeight(null));//100像素
frame.setTitle("打飞机");
frame.setLocationRelativeTo(null);//相对电脑桌面居中显示
//frame.add(new MyPanel());//添加画纸
MyPanel panel = new MyPanel();
frame.add(panel);
panel.run();
frame.setVisible(true);//设置可见 false
}
}