柚子的JAVA学习笔记

柚子的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
	}
}

猜你喜欢

转载自blog.csdn.net/qq_38194037/article/details/89517972
今日推荐