java小试牛刀(一):碰撞吧,小球

我时常想象人生就是一颗颗不同颜色的球,我们在特定的空间里面做自由的运动,偶尔会与另一颗美丽或者平凡的小球碰撞在一起,然后我们仍走向截然不同的道路。

生命如此,每个人都是独立的个体。也许有一天吧,你遇到了比你强大,比你包容的另一个生命,他或者她会告诉你,来我的怀里吧;于是乎你毅然决然的放弃了所有,奋不顾身的投入了他的怀抱,两颗不同的心,不同的生命也能融为一体。

于是我们终于知道,生命可以是坚硬的碰撞,也可以是温柔的拥抱。在碰撞与拥抱之间,整个宇宙中的生命得以延续,文明才能得到继续。

在这里作为java初步学习的小结,下面是我所做的小球碰撞以及包容(吞噬)的多线程程序。

以下:
我们用一个黑色的界面来代表整个宇宙,在其中放入五颜六色的形状不一的小球(代表生命),这些球在遇到界面的边界时会发生反弹,在遇到其他球时则会发生吞噬或者碰撞的随机过程。

将小球定义为Ball类,每次在黑色界面上的鼠标点击都会在点击处生成一个颜色随机,大小随机(有上限),速度随机(大小和方向随机,但x,y方向的速度不会同时为0)。将所有小球存放在Arraylist中,然后利用多线程对Arraylist进行操作。其中主要实现的是小球的碰撞以及吞噬的 功能。此外还引入暂停,继续,停止等功能。

下面是小球类

import java.awt.Color;
import java.awt.Graphics;
import java.awt.Graphics2D;
import java.util.Random;

/*
 * 这里定义的小球类
 * 属性有坐标x,y;大小size;速度xspeed,yspeed;颜色color。全部定义为private型
 * 各属性都有他们的setters和getters
 * 方法有move方法来控制其移动
 * 
 */
public class Ball {
   
    private int x,y,size;
    private int xspeed;
    private int yspeed;
    private Color color;
    public int getXspeed() {
        return xspeed;
    }

    public void setXspeed(int xspeed) {
        this.xspeed = xspeed;
    }

    public int getYspeed() {
        return yspeed;
    }

    public void setYspeed(int yspeed) {
        this.yspeed = yspeed;
    }

    public int getX() {
        return x;
    }

    public void setX(int x) {
        this.x = x;
    }

    public int getY() {
        return y;
    }

    public void setY(int y) {
        this.y = y;
    }

    public int getSize() {
        return size;
    }

    public void setSize(int size) {
        this.size = size;
    }

    public Color getColor() {
       
  • 2
    点赞
  • 13
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值