剛開始這裏。我以前有過編程類,但是對於Java來說並不陌生,並且沒有豐富的經驗。該節目來自Mehran Sahami在斯坦福大學Youtube上的講座。代碼從32分鐘左右開始可見。這是一個簡單的圖形程序,顯示一個彈跳球。一個適合我開始嘗試設置的好地方,用一個對象替換另一個對象,並且通常習慣於語法與屏幕上顯示內容的相關性。但是,我甚至無法進入隱喻的起跑線!我嘗試切割並粘貼到Sololearn模擬器中,但得到相同的錯誤。我認爲它必須與acm庫有關,但是。 。 。什麼?Java acm入門
代碼在下面,錯誤消息在下面。
import acm.program.*;
import acm.graphics.*;
public class BouncingBall extends GraphicsProgram {
private static final int DIAM_BALL = 30;
private static final double GRAVITY = 3;
private static final int DELAY = 50;
private static final double X_START = DIAM_BALL/2;
private static final double Y_START = 100;
//x velocity
private static final double X_VEL = 5;
//Y velocity determined by gravity and bounce
private static final double BOUNCE_REDUCE = 0.9;
//Starting coords
private double xVel = X_VEL;
private double yVel = 0.0;
//private instance variable
private GOval ball;
}
public void run(){
setup(){
while (ball.getX() < getWidth()) {
moveBall();
checkForCollision();
pause(DELAY);
}
}
//create and place ball
private void setup(){
ball=new GOval(X_START,Y_START,DIAM_BALL,DIAM_BALL);
ball.setFilled(true);
add(ball);
}
//update and move ball
private void moveBall(){
yVel+=GRAVITY;
ball.move(xVel,yVel);
}
//Collision detection
private void checkForCollision(){
if(ball.getY()>getHeight()-DIAM_BALL){
yVel=-yVel*BOUNCE_REDUCE;
double diff=ball.getY()-(getHeight()-DIAM_BALL);
ball.move(0,-2*diff);
}
}
}
}
「錯誤:爪哇:預期類,接口,或枚舉」 大約有這些十幾,指定(22,12),(26,17),(27,17),(28 ,13),(33,13),(34,13)。 。 。
我有一種感覺,當我明白爲什麼有些問題時,我將能夠解決所有問題。
在此先感謝!
[Java ACM package]的可能重複(https://stackoverflow.com/questions/3796879/java-acm-package) –
我從上面的鏈接中得到了acm,我試着將acm.jar移動到不同的地方我的直播tories,但沒有一個似乎有任何效果。無論我放在哪裏,都會出現同樣的錯誤。此外,文件的類型讀取「可執行Jar文件」,這與某些評論者描述的方式不同。 –
運行中的行應該有setup(){?或setup(); –