我们知道MIDP的图形用户界面分为两类,分别是高级图形用户界面和低级用户界面。一般来讲高级图形用户界面类使用起来比较方便,可移植性强,但是程序员对他的控制能力也很低,因为它们的界面表现是由底层控制的,而不是我们控制的。相比高级UI类,低级UI类则使用起来更难一些,但是控制能力更强,可以做出自己需要的界面。 Canvas和Graphics是我们必须熟练使用的两个类,分别代表了画布和画笔(事实上更丰富,姑且这么比喻)。而我们则是画画的人,而指导我们如何下笔的就是Java doc了,再加上勤奋努力一定可以画出不错的界面。比如tabbed菜单,二级菜单等。这里我们讲述一个简单菜单的制作方式。 在画菜单的时候,需要考虑两面...
本文将讲述代码优化对于编写高效的手机游戏的重要性。我将使用例子来为大家讲述何时使用何种方法来优化你的代码,使得我们的程序尽可能的挖掘 MIDP在手机中所剩无几的表现力。我们将会看到如何使用J2ME Wireless Toolkit的Profiler功能来找出优化代码的位置,最后我会给出编写J2ME程序的忠告。 为什么要优化? 游戏能够被划分为两种较广泛的类型:实时型和按键驱动型。按键驱动类型的游戏一般在屏幕上显示游戏目前所处的状态,并且等待玩家输入某些按键来驱动游戏继续运行。棋牌类游戏,大部分的解谜类游戏以及策略类和文字类游戏都属于这类游戏。而实时游戏,特别是动作游戏不会等待玩家的输入,他们一直运行直到游戏的结...
1 服务器端程序,接受连接并处理客户端的请求ServerApp.javapackage test; import java.io.*; import java.net.*; /** *//*** 服务器端程序* * @author luxuan310,修正赵学庆。* */public class ServerApp ...{static final int PORT = 9000; private ServerSocket serverSocket; private Socket socket; private BufferedReader netIn; private PrintWriter netOut; public ServerApp() throws IOException ...{serverSocket = new ServerSocket(PORT); System.out.println("server start"); while (true) ...{// 等待连接socket = serverSocket.accept(); ServerThread st = new ServerThread(...