雙緩衝技術是爲了解決Java在遊戲編程的過程當中因爲頁面刷新頻率太快,而引發的頁面閃爍問題。java
它的執行過程是這樣的:repaint() 到update()再到paint(),而咱們的雙緩衝代碼就寫在update()裏,編程
下面是一段代碼:this
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); } ... }
這就是它的核心代碼。code