Book to Screen

Java Snake Xenzia Game . Jar . 128x160 . May 2026

BY David Rapp Nov. 17, 2019

public void pauseApp() {} public void destroyApp(boolean unconditional) {} } import javax.microedition.lcdui.*; import java.util.*; public class SnakeCanvas extends Canvas implements Runnable { private static final int WIDTH = 128; private static final int HEIGHT = 160; private static final int CELL_SIZE = 8; private static final int COLS = WIDTH / CELL_SIZE; // 16 private static final int ROWS = HEIGHT / CELL_SIZE; // 20

private void gameTick()

public SnakeCanvas() snake = new Vector(); direction = RIGHT; nextDirection = RIGHT; initGame(); gameThread = new Thread(this); gameThread.start();

private Vector snake; // stores Points private int direction, nextDirection; private Point food; private boolean running; private int score; private Thread gameThread;

private static final int UP = 1, DOWN = 2, LEFT = 3, RIGHT = 4;

private void initGame() snake.removeAllElements(); snake.addElement(new Point(8, 10)); snake.addElement(new Point(7, 10)); snake.addElement(new Point(6, 10)); score = 0; spawnFood();

protected void paint(Graphics g) Graphics.LEFT); if (!running) g.drawString("Game Over", WIDTH/2, HEIGHT/2, Graphics.HCENTER

fits perfectly: 128 / 8 = 16 columns 160 / 8 = 20 rows 4. Core Implementation (Java ME style) a. MIDlet class import javax.microedition.midlet.*; import javax.microedition.lcdui.*; public class SnakeMIDlet extends MIDlet { private SnakeCanvas canvas; public void startApp() if (canvas == null) canvas = new SnakeCanvas(); Display.getDisplay(this).setCurrent(canvas);

Java Snake Xenzia Game . Jar . 128x160 . May 2026

public void pauseApp() {} public void destroyApp(boolean unconditional) {} } import javax.microedition.lcdui.*; import java.util.*; public class SnakeCanvas extends Canvas implements Runnable { private static final int WIDTH = 128; private static final int HEIGHT = 160; private static final int CELL_SIZE = 8; private static final int COLS = WIDTH / CELL_SIZE; // 16 private static final int ROWS = HEIGHT / CELL_SIZE; // 20

private void gameTick()

public SnakeCanvas() snake = new Vector(); direction = RIGHT; nextDirection = RIGHT; initGame(); gameThread = new Thread(this); gameThread.start();

private Vector snake; // stores Points private int direction, nextDirection; private Point food; private boolean running; private int score; private Thread gameThread;

private static final int UP = 1, DOWN = 2, LEFT = 3, RIGHT = 4;

private void initGame() snake.removeAllElements(); snake.addElement(new Point(8, 10)); snake.addElement(new Point(7, 10)); snake.addElement(new Point(6, 10)); score = 0; spawnFood();

protected void paint(Graphics g) Graphics.LEFT); if (!running) g.drawString("Game Over", WIDTH/2, HEIGHT/2, Graphics.HCENTER

fits perfectly: 128 / 8 = 16 columns 160 / 8 = 20 rows 4. Core Implementation (Java ME style) a. MIDlet class import javax.microedition.midlet.*; import javax.microedition.lcdui.*; public class SnakeMIDlet extends MIDlet { private SnakeCanvas canvas; public void startApp() if (canvas == null) canvas = new SnakeCanvas(); Display.getDisplay(this).setCurrent(canvas);

The Magazine: Kirkus Reviews

Featuring 365 industry-first reviews of fiction, nonfiction, children’s, YA, and audiobooks; also in this issue: an interview with Namwali Serpell, booklists; podcast highlights; and more

subscribe
  • kirkus star
  • The Kirkus Star

    One of the most coveted designations in the book industry, the Kirkus Star marks books of exceptional merit.

  • kirkus prize
  • The Kirkus Prize

    The Kirkus Prize is among the richest literary awards in America, awarding $50,000 in three categories annually.

Great Books & News Curated For You

Be the first to read books news and see reviews, news and features in Kirkus Reviews. Get awesome content delivered to your inbox every week.

Thank you!

Close Quickview