Java项目体验

  1. 1.       JAVA开发环境安装和配置

a)         下载JDK(Java  Development  Kit)

b)         安装JDK、 JRE(Java  Runtime  environment)

c)         配置环境变量:

                         i.              path(系统通过path指定的目录寻找相关的可执行文件!)

右键单击我的电脑à属性à高级à环境变量à修改path即可!

                       ii.              classpath(系统通过classpath寻找类文件)

JDK1.5之后,可以不设置!

  1. 2.       Eclipse的使用(目前使用最多的IDE:integrated development environment集成开发环境)

a)         下载

b)         解压即可

  1. 3.       新建一个JAVA项目

a)         New  Java  Projectà只需要输入project name,回车即可!

  1. 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.              单击运行按钮

 

 

开始开发我们的小游戏

  1. 增加窗口

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();

    }

}

 

  1. 加载图片

在项目下新建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();

    }

}

注意:运行时,第一次打开窗口看不到图片。需要将窗口最小化再打开即可看到!

 

  1. 学习画各种曲线、形状、字符串:

 

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();

    }

}

 

  1. 增加动画

 

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();

              }

           }

       }

    }

}

 

  1. 通过我们掌握的数学函数(抛物线、正弦曲线、椭圆等),控制游戏中物体的运动

 

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();

              }

           }

       }

    }

}

 

  1. 实现台球的运动!

 

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. 通过键盘来控制物体的运动!

 [微软用户1]暂时跟我们的游戏无关,但是一些基本的编程知识!

上一篇:HTML基础6--定位:绝对定位、相对定位,其他定位和定位问题


下一篇:《HTML5 canvas开发详解(第2版)》——1.2 基础的HTML5页面