-
Java Eclipse probleema..
Kun yritän käynnistää ton pelin niin tulee "Exception in thread "main" java.lang.Error: Unresolved compilation problem:
at aa.main(aa.java:30)"
Onko mun koodaukses jotai vikaa?
import java.awt.Canvas;
import java.awt.Graphics;
import java.awt.image.BufferStrategy;
import java.awt.image.BufferedImage;
import javax.swing.JFrame;
public class aa extends Canvas implements Runnable {
/**
*
*/
private static final long serialVersionUID = 1L;
public static int height = 400;
public static int width = 600;
public static String title = "Tutoriaali";
public boolean run = false;
public Thread thread;
public BufferedImage img;
public int[] pixel;
public ac screen;
public aa() {
screen = new ac();
img = new BufferedImage(width, height, BufferedImage.TYPE_INT_RGB);
pixel = ((DataBufferInt)img.getRaster().getDataBuffer()).getData();
}
public static void main(String[] args) {
aa game = new aa();
JFrame f = new JFrame();
f.setSize(width, height);
f.setVisible(true);
f.setTitle(title);
f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
f.setLocationRelativeTo(null);
f.add(game);
game.start();
}
public void start() {
if(run) return;
run = true;
thread = new Thread(this);
thread.start();
}
public void run() {
while(run) {
render();
}
public void render() {
BufferStrategy bs = this.getBufferStrategy();
if(bs == null) {
createBufferStrategy(3);
return;
}
screen.render();
for(int i=0;i<screen.pixel.length;i++) {
pixel[i] = screen.pixel[1];
}
Graphics g = bs.getDrawGraphics();
g.drawImage(img, 0, 0, width, height, null);
g.dispose();
bs.show();
}
3 vastausta
-
sulla ei taida olla mitään käsitystä javasta ja tosta koodista ei taida olla yksikään merkki sun kirjottama?
-
Errorin pohjalta kyseessä olisi syntaksivirhe. Tarkista koodin oikeinkirjoitus, puuttuisiko aaltosulkuja tms?
-
Aika mutulla vastaan kun javan kirjoittamisesta on muutamia vuosia aikaa..
Public void run funktion jälkeen funktion päättävä aaltosulje puuttuu.
Muuten koodista, tuo for silmukka jossa kopioidaan oletettavasti puskurista ruudulle pikseleitä yksi kerrallaan on aika turvaton koska piksel taulukon kokoa tai muistivarausta ei tarkisteta missään vaiheessa (onko typo vai tarkoitus että kirjoitetaan vain ensimmäistä pikseliä joka kohtaan?)
Vastaa kysymykseen
Huom! Ethän vastaa pelkällä linkillä. Vaikka vastaus kysymykseen löytyisikin linkin takaa, tiivistä sen sisältö tähän, jotta lukijan ei tarvitse siirtyä toiseen palveluun saadakseen tarkan vastauksen kysymykseensä.