📄 ball.java
字号:
import java.awt.*;
import java.awt.event.*;
import java.applet.*;
public class Ball extends Applet implements Runnable
{
Thread greenBall,blueBall; //绿球和蓝球
Graphics redPen,bluePen;
double t=0;
public void init()
{
greenBall=new Thread(this);
blueBall=new Thread(this);
redPen=getGraphics();
bluePen=getGraphics();
redPen.setColor(Color.green);
bluePen.setColor(Color.blue);
}
public void start()
{
greenBall.start();
blueBall.start();
}
public void run()
{
while(true)
{
t=t+0.2;
if(Thread.currentThread()==greenBall)
{
if(t>20)
t=0;
redPen.clearRect(80,0,120,400); //清空当前区域
redPen.fillOval(100,(int)(1.0/2*t*t*9.8),16,16); //9.8 g为重力加速度 自由落体公式h=1/2gt^2
try{
greenBall.sleep(60);
}
catch(InterruptedException e){}
}
else if(Thread.currentThread()==blueBall)
{
bluePen.clearRect(120,0,600,600);
//抛物线运动方程 H=V0t+1/2gt^2 V0初始运动
bluePen.fillOval(150+(int)(40*t),(int)(1.0/2*t*t*9.8),16,16);//9.8 g为重力加速度40为水平加速度
try{
blueBall.sleep(60);
}
catch(InterruptedException e){}
}
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -