【推荐】2019 Java 开发者跳槽指南.pdf(吐血整理) >>>
双缓冲技术是为了解决Java在游戏编程的过程中由于页面刷新频率太快,而引起的页面闪烁问题。
它的执行过程是这样的:repaint() 到update()再到paint(),而我们的双缓冲代码就写在update()里,
下面是一段代码:
Image offScreenImage=null;
public void update(Graphics g) { //双缓冲技术
if(offScreenImage==null){
offScreenImage=this.createImage(GAME_WIDTH,GAME_HEIGHT);
}
Graphics goffScreen=offScreenImage.getGraphics();
Color c=goffScreen.getColor();
goffScreen.setColor(Color.GREEN);
goffScreen.fillRect(0, 0, GAME_WIDTH,GAME_HEIGHT);
goffScreen.setColor(c);
paint(goffScreen);
g.drawImage(offScreenImage, 0, 0,null);
}
...
}
这就是它的核心代码。
来源:oschina
链接:https://my.oschina.net/u/221585/blog/717367