久久亚洲成a人片熟女精品色一区二区三区|国产精品视频第一精品视频|av天堂热无码手机版|亚洲?v无码久久无遮挡|国产精品偷伦视频免费观看国产|麻豆国产自产精品丰满熟妇|av无码av不卡一区二区|久久亚洲精品中文字

ARTICLE DETAIL

資訊詳情

深耕商務(wù)建站與企業(yè)官網(wǎng)運(yùn)營(yíng)的一線實(shí)戰(zhàn)洞察。

Swing手寫植物大戰(zhàn)僵尸:Java面向?qū)ο笈c游戲開發(fā)實(shí)戰(zhàn)

Swing手寫植物大戰(zhàn)僵尸:Java面向?qū)ο笈c游戲開發(fā)實(shí)戰(zhàn) 簡(jiǎn)介這套Java Swing植物大戰(zhàn)僵尸項(xiàng)目附帶完整代碼注釋和說明文檔適合正在學(xué)習(xí)Java SE、希望深入理解Swing桌面游戲開發(fā)的初學(xué)者及進(jìn)階者。項(xiàng)目通過JFrame、JPanel、Graphics2D等核心組件完整呈現(xiàn)事件監(jiān)聽、多線程動(dòng)畫、界面繪制以及MVC設(shè)計(jì)模式在真實(shí)游戲中的落地方式注釋逐行解釋關(guān)鍵邏輯能幫助讀者快速理清游戲循環(huán)、碰撞檢測(cè)與資源加載的協(xié)作關(guān)系。壓縮包共155個(gè)文件包含20個(gè)java源碼、39個(gè)class編譯文件以及大量png、gif、jpg圖片素材和2個(gè)wav音效另附docx文檔說明整體設(shè)計(jì)與模塊功能整體包體約19.15MB。目前已有438人學(xué)習(xí)內(nèi)容覆蓋從主窗口搭建到圖形繪制、音效播放等完整流程既可作為課程設(shè)計(jì)參考也適合按注釋逐步拆解模仿是學(xué)習(xí)Java Swing游戲開發(fā)的實(shí)用資料。1. Swing 寫植物大戰(zhàn)僵尸不是玩具是 Java 面向?qū)ο蟮淖罴丫毷猪?xiàng)目很多 Java 從業(yè)者把 Swing 當(dāng)成寫管理系統(tǒng)的代名詞一提起 Swing 做游戲就下意識(shí)覺得性能不行、效果太丑。但實(shí)際上用 Swing 手寫一個(gè)帶全注釋的《植物大戰(zhàn)僵尸》復(fù)刻版正好能把 Java 面向?qū)ο?、容器線程、事件分發(fā)模型和定時(shí)任務(wù)這些最常見的八股考點(diǎn)一次性全部落到真實(shí)代碼里。這個(gè)項(xiàng)目不像 Spring Boot 那邊復(fù)雜也不像算法題那樣抽象它能讓你看到一個(gè) JLabel 怎么變成一顆會(huì)攻擊的豌豆一個(gè) ArrayList 里成千上萬顆子彈如何優(yōu)雅地消失。這篇文章不打算講那些虛頭巴腦的游戲引擎設(shè)計(jì)而是直接圍繞一份帶全注釋和文檔的 Swing 項(xiàng)目源碼把它拆成可復(fù)現(xiàn)的落地路徑從類架構(gòu)、Timer 主循環(huán)到碰撞檢測(cè)和存檔序列化。無論你是剛學(xué)完 Java 基礎(chǔ)想做點(diǎn)像樣的東西包裝簡(jiǎn)歷還是在學(xué) Swing 布局和事件監(jiān)聽的在校生只要照著本文的步驟完全可以在本地跑通一個(gè)邏輯完整、注釋豐富、能拿得出手講清楚的植物大戰(zhàn)僵尸工程。2. 架構(gòu)先行從 class 注釋到 JPanel 網(wǎng)格為什么這種設(shè)計(jì)最適合新手2.1 注釋不是寫作文Javadoc 注釋規(guī)范與文檔生成全注釋和文檔解釋是這個(gè)項(xiàng)目的核心賣點(diǎn)。很多開源項(xiàng)目源碼讀了像天書原因就是注釋寫了等于沒寫。一個(gè)好的類注釋應(yīng)該包含這個(gè)類是什么、解決什么問題、和誰協(xié)作、怎么實(shí)例化、以及限制條件。比如一個(gè)豌豆射手類優(yōu)質(zhì)注釋是這樣寫的/** * 豌豆射手Peashooter。 * * p職責(zé)每隔 1.4 秒發(fā)射一顆豌豆子彈攻擊正前方第一個(gè)僵尸。 * 豌豆射手自身不檢測(cè)僵尸只負(fù)責(zé)發(fā)射子彈碰撞邏輯統(tǒng)一交給 GamePanel。 * * p使用場(chǎng)景玩家在草坪上放置植物時(shí)通過 PlantFactory 創(chuàng)建實(shí)例。 * 該實(shí)例會(huì)被加入 {namelink GamePanel#plants} 列表并在 EDT 線程中 * 被主循環(huán)每幀調(diào)用 {namelink #onFrame()} 進(jìn)行邏輯推進(jìn)。/p * * p注意豌豆子彈的初始坐標(biāo)由植物 X 坐標(biāo)決定不能跨行攻擊。/p * * author YourName * version 1.0 * see Zombie * see GamePanel */ public class Peashooter extends Plant { // ... }寫注釋最容易犯的毛病是解釋代碼本身比如i; // i 加一這種注釋刪了反而更清爽。注釋應(yīng)該寫為什么和邊界條件。我剛帶實(shí)習(xí)生時(shí)就立過規(guī)矩每個(gè)人提交代碼前必須把類注釋補(bǔ)齊否則不做 Code Review。文檔解釋怎么生成不需要額外工具。JDK 自帶的 javadoc 命令就能把這些帶 Javadoc 標(biāo)記的注釋提取成一套 HTML 文檔像官方 API 一樣可以點(diǎn)著看。命令如下javadoc -d docs -encoding UTF-8 -charset UTF-8 -windowtitle 植物大戰(zhàn)僵尸項(xiàng)目API src/main/java/**/*.java執(zhí)行完會(huì)在 docs 目錄下生成 index.html。這里有個(gè)小坑如果類注釋里用了{(lán)link}引用了不存在的類javadoc 會(huì)報(bào)錯(cuò)或者標(biāo)紅所以寫完注釋后建議跑一次這條命令權(quán)當(dāng)注釋檢查器。文檔解釋到位了看代碼的人就不用一行行反推你當(dāng)時(shí)怎么設(shè)計(jì)的。2.2 從 JPanel 到網(wǎng)格拋棄 GridLayout用 null 布局手動(dòng)鋪草坪《植物大戰(zhàn)僵尸》的核心是 5 行 9 列的戰(zhàn)場(chǎng)草坪。很多人第一反應(yīng)是用GridLayout(5, 9)但在實(shí)際實(shí)施中你會(huì)發(fā)現(xiàn) Swing 的 GridLayout 并不會(huì)幫你把背景圖、卡片欄、割草機(jī)這些額外控件排得整齊。它只知道平均分配沒法做出左邊是卡片欄右下角是鏟子這種復(fù)雜界面。常見做法是對(duì)主窗口JFrame使用BorderLayout。北邊放一個(gè)JPanel作為卡片選擇欄中央放一個(gè)GamePanel自繪面板。而GamePanel內(nèi)部為了像素級(jí)精確控制每一個(gè)植物、僵尸的位置直接setLayout(null)用絕對(duì)坐標(biāo)。GamePanel panel new GamePanel(); panel.setLayout(null); // 關(guān)閉布局管理器所有控件手動(dòng) setBounds // 設(shè)置背景草地與網(wǎng)格原點(diǎn)左上角坐標(biāo) panel.setBounds(0, 0, 900, 600); // 在地圖網(wǎng)格 (row0, col2) 放置一個(gè)豌豆射手 JLabel JLabel plantLabel new JLabel(); plantLabel.setBounds(200 30, 50 80, 60, 70); plantLabel.setIcon(plantImage); panel.add(plantLabel);這段代碼是復(fù)刻項(xiàng)目里最核心的視覺落地邏輯。絕對(duì)定位雖然看起來硬編碼但對(duì)于固定分辨率的小游戲來說反而比布局管理器更可控。你會(huì)發(fā)現(xiàn)它不參與窗口拉伸所以你最好把窗口大小setResizable(false)鎖死。如果想讓它在不同分辨率下縮放你得在繪制時(shí)手動(dòng)乘以縮放系數(shù)那屬于中期優(yōu)化。2.3 主循環(huán)與定時(shí)任務(wù)java.swing.Timer 是唯一正統(tǒng)解游戲的心臟是每幀去做兩件事更新邏輯、重繪畫布。這個(gè)循環(huán)在 Swing 里必須用javax.swing.Timer而不是java.util.Timer。因?yàn)閖ava.util.Timer的回調(diào)運(yùn)行在獨(dú)立線程它不能直接操作 UI 組件必須手動(dòng)SwingUtilities.invokeLater切回事件分發(fā)線程EDT稍微沒處理好就翻車。javax.swing.Timer天生就在 EDT 上執(zhí)行回調(diào)不需要考慮線程切換做簡(jiǎn)單游戲完全夠用。怎么讓植物攻擊節(jié)奏、僵尸移動(dòng)速度和子彈飛行速度互不干擾答案是全局一個(gè)Timer驅(qū)動(dòng) 30 FPS然后每個(gè)對(duì)象體記錄自己的累計(jì)時(shí)間。// 全局主循環(huán)約 33ms tick 一次30FPS Timer gameLoop new Timer(33, e - { GamePanel panel (GamePanel) this.getComponent(0); // 1. 更新植物邏輯判斷是否需要發(fā)射子彈 for (Plant p : panel.plants) { p.onFrame(); // 植物內(nèi)部自己數(shù)幀夠了就 produceBullet() } // 2. 更新僵尸邏輯移動(dòng)與攻擊 panel.updateZombies(); // 3. 更新子彈邏輯子彈飛檢測(cè)命中 panel.updateBullets(); // 4. 統(tǒng)一觸發(fā) Swing 重繪 panel.repaint(); }); gameLoop.start();javax.swing.Timer的一個(gè)特點(diǎn)是倒計(jì)時(shí)精度受 EDT 阻塞影響。如果某個(gè)回調(diào)里做了耗時(shí)超過 33ms 的操作比如ImageIO.read(new File(大圖.jpg))你的游戲就會(huì)肉眼可見地卡頓一下。所以按 FPS 跑起來后最關(guān)鍵的一條軍規(guī)是IO 操作絕對(duì)不能進(jìn)主循環(huán)。圖片在啟動(dòng)時(shí)一次性全部讀進(jìn)HashMap緩存運(yùn)行時(shí)只做內(nèi)存替換與位置計(jì)算。這里也順帶解決了java定時(shí)任務(wù)框架相關(guān)的困惑游戲項(xiàng)目里的定時(shí)任務(wù)不是用來做秒殺下單那種延遲隊(duì)列的它就是個(gè)基礎(chǔ)的刷新鉤子。核心邏輯把控好Timer這個(gè)引子所有周期性動(dòng)作都能由它派生。3. 把植物與僵尸映射為 Java 對(duì)象繼承、多態(tài)與狀態(tài)機(jī)3.1 植物類族譜抽象類 Plant 與三個(gè)必寫的抽象方法你把游戲里所有植物列一遍向日葵、豌豆射手、堅(jiān)果墻、櫻桃炸彈……它們既有共性有血量、有價(jià)格、有冷卻時(shí)間、會(huì)播放動(dòng)畫又有完全不同的行為。這種一堆東西長(zhǎng)得像但動(dòng)作完全不同的場(chǎng)景越早提取抽象類越好可以省下一堆 if-else 黑匣子。我一般這樣設(shè)計(jì)Plant抽象類public abstract class Plant { protected int gridRow; protected int gridCol; protected int hp; protected int sunCost; // 陽光費(fèi)用 protected int coolingFrames; // 種植后的冷卻幀數(shù)剩余 protected int attackInterval; // 攻擊間隔幀數(shù) 毫秒 / 33ms protected int currentFrame; // 當(dāng)前累計(jì)幀 /** * 每幀被 GamePanel 調(diào)用用于執(zhí)行植物行為。 * 子類必須實(shí)現(xiàn)具體效果例如豌豆射手在此發(fā)射子彈。 */ public abstract void onFrame(Scene scene); /** * 被子彈或僵尸攻擊時(shí)扣血 * 返回 true 表示本植物已死亡需從場(chǎng)景中移除。 */ public abstract boolean onDamaged(int damage); /** * 植物被“鏟子”移除時(shí)釋放資源如停止內(nèi)部動(dòng)畫。 */ public abstract void onDestroy(); }子類Peashooter只需要把攻擊間隔設(shè)成42幀1428ms 約等于原版的 1.4 秒在onFrame里累計(jì)幀數(shù)到點(diǎn)就調(diào)scene.addBullet(new Bullet(...))即可。向日葵類似只是把子彈換成陽光。堅(jiān)果墻甚至可以直接onFrame里什么都不做把邏輯填在onDamaged里。這個(gè)方案的直接好處是你要加一個(gè)新植物比如寒冰射手只需要新建一個(gè)類繼承Plant重寫這三個(gè)方法并在PlantFactory一個(gè)簡(jiǎn)單的 switch-case 工廠里注冊(cè)一下。游戲主邏輯完全不用改。這比在GamePanel里寫一大堆if (plantType 0)要優(yōu)雅得多也是面試官最愛聽的面向?qū)ο笤O(shè)計(jì)。3.2 僵尸類族譜移動(dòng)、咬合與受擊狀態(tài)機(jī)僵尸和植物的方向相反它是從屏幕右側(cè)向左移動(dòng)的。這里的核心考點(diǎn)是狀態(tài)機(jī)僵尸不能永遠(yuǎn)只會(huì)走它碰到堅(jiān)果墻時(shí)必須停下來張嘴咬血量低于 50% 時(shí)要不要掉頭原版不掉頭。每個(gè)僵尸至少需要三個(gè)狀態(tài)WALKING、EATING、DEAD??梢杂妹杜e或者整數(shù)常量去標(biāo)識(shí)然后在onFrame里 switch 判斷public enum ZombieState { WALKING, // 向左走 EATING, // 正在啃植物不移動(dòng) DYING, // 播放死亡動(dòng)畫不移動(dòng)不再被碰撞 REMOVED // 已移除出列表 } public class NormalZombie extends Zombie { private ZombieState state ZombieState.WALKING; Override public void onFrame(Scene scene) { // 先移動(dòng)再檢測(cè)碰撞——保證「碰撞邊界」屬實(shí) if (state ZombieState.WALKING) { this.x - speedPerFrame; // speedPerFrame 約 0.3 像素/幀10像素/秒 // 檢測(cè)目標(biāo)植物是否在正前方 Plant target scene.getPlantAt(this.gridRow, this.x); if (target ! null) { this.state ZombieState.EATING; } } else if (state ZombieState.EATING) { // 啃咬間隔每 0.5 秒造成 100 傷害 if (gameFrame % 15 0) { target.onDamaged(100); } } } }這里有用地上的實(shí)際參數(shù)原版“普通僵尸”移動(dòng)速度大約是 4.7 秒走完一格約 80 像素折合每幀 17 像素不對(duì)我剛說的 0.3 像素是對(duì)的。你可以調(diào)節(jié)這個(gè)速度來改變游戲難度。全注釋的項(xiàng)目里每個(gè)魔法數(shù)字旁邊都得寫清楚這是幾秒的移動(dòng)速度換算否則后人根本不敢動(dòng)參數(shù)這就是注釋真正的價(jià)值所在。3.3 子彈碰撞檢測(cè)用 CopyOnWriteArrayList 還是迭代器刪除碰撞檢測(cè)如果寫成兩兩遍歷也就是ListBullet * ListZombie只要同屏超過 50 個(gè)單位每幀 2500 次計(jì)算Swing 雖然不至于崩但也會(huì)掉幀。更聰明的做法是按行來分組邏輯。我的做法是構(gòu)造一個(gè)HashMapInteger, ListZombiekey 是行號(hào)0-4value 是那一行存活的僵尸列表。子彈發(fā)射時(shí)帶一個(gè)屬性targetRow也是 0-4。碰撞檢測(cè)時(shí)只需要拿子彈和它對(duì)應(yīng)行的僵尸進(jìn)行矩形相交判斷這樣立刻省掉 80% 的無效計(jì)算。代碼實(shí)現(xiàn)如下這段代碼同時(shí)是最容易踩坑的地方IteratorBullet it bullets.iterator(); while (it.hasNext()) { Bullet b it.next(); if (b.isOutOfBound()) { it.remove(); // 邊界外子彈直接移除并發(fā)安全由單線程 EDT 保證 continue; } ListZombie rowZombies zombieByRow.get(b.getTargetRow()); for (Zombie z : rowZombies) { // 矩形碰撞子彈左邊 僵尸右邊且子彈 X 軸重合 if (b.x BULLET_WIDTH z.x b.x z.x ZOMBIE_WIDTH) { z.onDamaged(b.attack); it.remove(); // 命中后穿透停止 break; } // 如果子彈的 X 已經(jīng)比僵尸還大說明穿過去了本行后續(xù)僵尸也不看了。 } }這段代碼的底層坑是如果rowZombies是普通的ArrayList你在遍歷第二個(gè)循環(huán)時(shí)執(zhí)行remove會(huì)拋ConcurrentModificationException。所以這里要么外層僵尸集合用CopyOnWriteArrayList以空間換時(shí)間要么在僵尸刪除時(shí)只打標(biāo)記state REMOVED等整輪遍歷結(jié)束后再統(tǒng)一清除尸體。4. 避坑與排查Swing 復(fù)刻項(xiàng)目的 5 個(gè)高頻常見問題4.1 雷區(qū) 1EDT 阻塞導(dǎo)致界面卡死、UI 無響應(yīng)現(xiàn)象游戲運(yùn)行 1 分鐘或玩到某關(guān)后整個(gè)窗口變成未響應(yīng)白屏鼠標(biāo)點(diǎn)哪都沒用。原因絕大多數(shù)情況是在Timer回調(diào)里用了Thread.sleep()模擬某個(gè)延遲或者在游戲邏輯里同步加載了本地文件。EDT 被 sleep 阻塞后它沒法處理鼠標(biāo)事件和重繪事件。解決移除所有Thread.sleep()。需要延遲生效的邏輯改用幀計(jì)數(shù)器比如設(shè)置plant.coolingFrames 50每幀在onFrame里執(zhí)行if (coolingFrames 0) coolingFrames--;當(dāng)它等于 0 時(shí)才允許種植。IO 讀取全部拿到構(gòu)造函數(shù)或啟動(dòng)場(chǎng)景里預(yù)加載。4.2 雷區(qū) 2遍歷 ArrayList 時(shí)刪除元素ConcurrentModificationException現(xiàn)象子彈擊中僵尸那一瞬間控制臺(tái)爆出java.util.ConcurrentModificationException然后動(dòng)物停止刷新。原因使用for (Bullet b : bullets)增強(qiáng) for 循環(huán)時(shí)循環(huán)體內(nèi)部直接調(diào)用bullets.remove(b)。迭代器已經(jīng)檢測(cè)到結(jié)構(gòu)修改直接拋異常。解決統(tǒng)一使用Iterator的remove()方法或者先遍歷收集toRemove列表循環(huán)結(jié)束后再執(zhí)行removeAll(toRemove)。前者更直接后者適合需要先判完再批量刪的場(chǎng)景。記住一個(gè)原則循環(huán)刪除只用迭代器。4.3 雷區(qū) 3Jar 包雙擊無法運(yùn)行圖片不顯示路徑與編碼現(xiàn)象在 IDEA 里運(yùn)行好好的導(dǎo)出Runnable JAR后背景圖變成空白日志報(bào)FileNotFoundException。原因用了new File(src/main/resources/images/...)這種相對(duì)路徑。IDEA 工作時(shí)根目錄是項(xiàng)目根而 jar 在/target目錄運(yùn)行時(shí)這個(gè)相對(duì)路徑不存在了。解決只能用類路徑資源讀取不能當(dāng)成文件。同時(shí)注意不要用中文做文件名避免跨平臺(tái)打包時(shí)的亂碼編碼問題。// 正確姿勢(shì)從 classpath 讀取資源 InputStream imgStream Peashooter.class.getResourceAsStream(/images/peashooter.png); BufferedImage img ImageIO.read(imgStream); ImageIcon icon new ImageIcon(img);4.4 雷區(qū) 4高 DPI 屏幕下游戲窗口大而模糊文字發(fā)虛現(xiàn)象自己的 1080p 屏幕下很清楚拿到 2K/4K 高分屏上窗口小得像螞蟻強(qiáng)行拉伸后所有植物邊緣發(fā)虛。原因高分屏可能存在縮放比例而 Java 的AWTUtilities沒有開 HiDPI。直接設(shè)置絕對(duì)坐標(biāo)會(huì)因?yàn)橄到y(tǒng)縮放而變得像素顆粒感很明顯。解決跟布局無關(guān)要設(shè)置System.setProperty(sun.java2d.uiScale.enabled, false)或者setUndecorated的擴(kuò)展視口。但更穩(wěn)的是在main方法第一行強(qiáng)制關(guān)閉 HiDPI 縮放會(huì)造成高分屏也模糊。實(shí)際經(jīng)驗(yàn)是讓畫面自適應(yīng)更難不如用可縮放矢量SVG或者直接鎖死 1280x720 并用JFrame縮放全屏適配。4.5 雷區(qū) 5全注釋項(xiàng)目卻沒人維護(hù)的深層原因——注釋與代碼腐敗不同步現(xiàn)象注釋里寫著每 1.4 秒發(fā)射一顆子彈但代碼里的攻擊間隔常量被某次平衡性調(diào)整改成了 0.9 秒或者把MILLISECONDS 1400改成了140。注釋變得不可信后人只能逐行反查最后選擇刪掉注釋。原因注釋設(shè)計(jì)里沒有唯一來源原則。常量除了在注釋里說明還要在代碼中直接引用比如private static final int SHOOT_DELAY_MS 1400;然后在onFrame里計(jì)算幀數(shù)時(shí)用它做除法。解決把魔法數(shù)字全部命名成不可變常量。只有類注釋負(fù)責(zé)描述行為方法注釋負(fù)責(zé)描述邊界條件不做任何數(shù)值復(fù)讀。這才符合全注釋項(xiàng)目該有的樣子。5. 驗(yàn)證與壓榨讓 Swing 游戲更絲滑的 3 個(gè)細(xì)節(jié)技巧做完以上核心功能后項(xiàng)目能跑但這還不夠。全注釋的源碼只是讓你讀得懂真正決定你愿不愿意把它放上簡(jiǎn)歷的是它跑起來是否順暢以及存檔邏輯是否清晰。先聊重繪優(yōu)化。默認(rèn)情況下panel.repaint()會(huì)讓整塊GamePanel重新繪制。如果你的畫布是 900x600里面有 80 個(gè)植物和 50 個(gè)僵尸每幀完整重繪會(huì)有明顯開銷。正確做法是panel.repaint(rect)只刷新發(fā)生變化的小矩形區(qū)域。比如只有一個(gè)豌豆射手吐出了子彈就只更新子彈所在的那個(gè)行區(qū)域?qū)挾葞资袼馗叨?80 像素。Swing 內(nèi)部會(huì)合并臟矩形這樣 CPU 占用能掉下來一半。唯一的坑是你必須確保植物或者僵尸移動(dòng)時(shí)新舊兩個(gè)位置都要標(biāo)記為 dirty否則會(huì)留下殘影。然后是存檔。直接用 Java 序列化是最簡(jiǎn)單的定義一個(gè)SaveData類里面放當(dāng)前關(guān)卡、陽光數(shù)量、植物冷卻集合等等。然后把ListPlant里的必要字段復(fù)制到一個(gè)Serializable的 DTO 里避免整個(gè) JComponent 序列化導(dǎo)致的NotSerializableException。public class SaveData implements Serializable { private static final long serialVersionUID 1L; public int level; public int sunCount; public int[] plantGrid; // 例如 grid[col]plantTypeId public int totalWave; // 構(gòu)造函數(shù)與普通 getter/setter 省略 }寫文件用ObjectOutputStream輸出到.pvz文件讀檔就是ObjectInputStream反序列化。注意serialVersionUID如果你改了SaveData的字段舊存檔會(huì)報(bào)InvalidClassException俗稱版本不兼容。這是合理的它能提醒你舊存檔不可用如果你不想讓玩家犧牲進(jìn)度就要設(shè)計(jì)獨(dú)立的版本號(hào)字段并做遷移升級(jí)邏輯。最后一個(gè)技巧是動(dòng)畫幀。Swing 不像游戲引擎有現(xiàn)成的Animation組件常見做法是給植物或僵尸塞一個(gè)BufferedImage[] frames然后在onFrame里每隔 6 幀切換一次setIcon(new ImageIcon(frames[index]))。這里有個(gè)內(nèi)存陷阱new ImageIcon(frame[i])如果每幀都新建對(duì)象會(huì)創(chuàng)建大量短期對(duì)象頻繁觸發(fā) GC。緩存做法是提前把動(dòng)畫幀數(shù)組轉(zhuǎn)成ImageIcon[]切換時(shí)只改 label 引用。// 提前將 4 幀動(dòng)畫圖全部裝載成 ImageIcon private ImageIcon[] walkFrames { new ImageIcon(zombieWalk1), new ImageIcon(zombieWalk2), new ImageIcon(zombieWalk3), new ImageIcon(zombieWalk4) }; // 每幀調(diào)用切換圖片 if (frameCount % 8 0) { label.setIcon(walkFrames[(frameCount / 8) % walkFrames.length]); }至于全注釋文檔在把代碼調(diào)整好后用mvn javadoc:javadoc生成一份 HTML 文檔放到工程docs文件夾里。很多人在 README 里放架構(gòu)圖都是畫 PPT但 javadoc 生成的類協(xié)作關(guān)系{link}指向是真實(shí)可跳轉(zhuǎn)的。寫完這套你的項(xiàng)目基本就具備了注釋詳盡、結(jié)構(gòu)清晰、能跑能存盤的特征。如果你正在準(zhǔn)備 Java 實(shí)習(xí)或者校招把這樣的項(xiàng)目講深兩個(gè)問題比如 EDT 阻塞你怎么查的、遍歷刪除的異常你怎么解的遠(yuǎn)比背一百道八股文更有效。我自己的血淚經(jīng)驗(yàn)是分支管理和注釋一樣重要每完成一個(gè)植物功能就單獨(dú)打一個(gè) tag改壞了還有后悔藥吃。希望幫到你。本文還有配套的精品資源點(diǎn)擊獲取
返回列表
PREV
查看更多資訊
NEXT
返回資訊列表
蜜臀中文无码午夜| 亚洲官网在线| 9I1性色影院| 综合网欧| 熟妇人妻一区二区三区| 天天爱天天韩国日本牛牛牛牛 | 成人26uuu| 天天操福利视频综合网站| 国产亚洲在线观看| 一区操逼日比视频| 亚洲AV成人无码一区二区三区在线观看 | 四虎精品亚洲| 国产精品白虎| 色综合久久久久| 国产兽交视频在线播放| 久久午夜色播影院免费高清| 肏逼视频日本| 天天澡天天爽日日AV| 日本高清一本二本免费不卡| 粉嫩AV一区夜夜嗨| 黄呦呦在线| 人妻啊啊人妻啊| 一级啊性爱在线视频| 第四色奇米影视777| 精品日韩| 啊啊啊好想要| 91伊人久| 中文字幕人成乱码熟女香港| 亚洲国产欧美一区二区潘金莲 | 久久黄色性爱视频| 亚洲无吗在线视频| 91狠狠综合久久| 综合操逼| 99视频精品| 精品伊人久久久大香线蕉小说| 熟女激情综合网| 久久久亚洲熟妇熟女| 五月天人妻综合| 精品无码一区二区人妻久久蜜桃| 久久99精品九九久久久婷婷| 亚洲偷拍欧美激情| 五月天激情小说| 福利在线观看一区二区| 999久久久久久久精| 午夜福利无毒不卡| 果冻国产精品麻豆成人av| 伦伦成年午夜免费视频| 大香蕉综合| 色综合色色| 亚洲无码99| 日本久久天堂| 人妻在线中出视频| 黑白配性爱AV成| 青青五月天| 国际精品久久久| 中文字幕国产| 香蕉视频欧美一卡二卡| 午夜操逼不卡| 国产尹人在线视频免费| 亚洲欧美色综合| 麻豆天美制片厂网站视频| 91人人看| 操B久久| 超碰98综合网| 国产欧美另类久久久精品课程| 四虎免费在线观看| 性爱Av免费| 综合一区中亚洲国产成人综合精品| 无套内射性感少妇视频| 在线视频一区二区传媒| www.成人无码| 人妻偷拍一区二区三区| 欧天美中出| a啊啊啊啊啊啊啊啊一区二区| 久草这里只有精品 | 最新日产中文在线麻豆| 国产夜夜艹| 亚洲素人综合| 最新国产亚洲精品精品国产亚洲综合 | 国产熟女精品区| 亚洲性刺激| 欧美爆乳精品一区二区| 久久美女福利是上海美女| 天天看高清麻豆| 亚川综合视频| 色五月婷婷麻豆在| 精品十八在线观看| 亚洲五码一区二区三区| 日欧操屄视频| 五月天日日操夜夜操| 色九久| 亚洲综合另类小说色区亚洲成av人片在www| 中文字幕丝袜国产第一页不卡| 99热在线观看| 97资源久久| 污污汅18禁网站在线永久免费观看| 99热这里只有精品8| 色色99| 一本色道久久综合精品婷婷| 操我无码| 欧美日韩国产另类综合| 东京日日夜夜| 国产精品久久久亚洲第一牛牛_在线观看 | 18岁禁 茉莉成人久久| 亚洲天堂少妇| 婷婷五月天福利| 久久是精品| 激情抓乳插进去啪啪啪日韩| 久久綜合很很很| 欧美视频一| 久久婷婷色综合一区二区三区| 久久久性少妇| 日本免费一区二区不卡| 天色综合网| 亚洲自拍97| av一区二区三区 中文| 啊啊啊啊啊舒服| 日婷婷| 97欧美精品综合| 97AV在线观看| 天天日天天射天天干| 美欧色综合| 色色色五月婷婷| 亚洲综合图片在线| 曰韩av中文字幕专区| 欧亚日韩综合精品国产| 久久无码电影| 国产精品乱码久久久、久久| 色噜噜人妻丝袜a∨先锋影| 九九免费影片| 亚洲人精品久久久喷水| 天天摸天天插天天日| 日日躁夜夜躁狠狠躁超爽| 天天做日日爱夜夜爽| 久久久少妇诱惑精品视频| 熟女字幕| 国产精品操| 99爱久久视频频| 性久久久| 偷拍亚洲情色| 欧美国产一区二区三区麻豆传媒| 久久性爱网站| 男人的天堂1024| 五月激情综合网| 粉嫩AV一区二区夜夜| 亚洲av综合色| 少妇九九九九| 青青草原人妻| 日韩人成网站在线播放| 综合自拍| 九九九久千久久激情蜜桃在线看 | 岛国大片在线观看网站入口| 后入式999| 五月香婷婷| 啊啊啊啊啊好多水| 新视频sss国产| 亚洲中文国际强奸字幕| 超碰在线看| 中文区中文字幕免费看| 婷婷色香| 亚欧高清在线| 国产操伦| 欧美人与动性人交a| 日本啊啊啊啊啊视频| 男人天堂站| 麻豆熟妇乱妇熟色A片在线看| 热九九精品| av激情亚洲五月天| 男人天堂无码| 蜜臀久久99精品久久久久久久久| 亚洲精品尤物yw在线影院| 97伦综合| 激情综合网一盗摄| 久久黄黄| 欧成人精品一区二区三区| 第45页一区二区| 婷婷视频在线免费观看| 日韩一级欧美一级国产一级台湾| 久久精品高清无码一区| 96精品久久久久中文字幕| 精品亚洲国产成人AV制服丝袜 | 欧美资源| 99爱爱| 五月丁香久久| 思思热影视| 男人天堂2017| 精品人妻一区二区三区免费视频| 亚洲综合一| 中文字幕日产av人| 在线国产探花| 操高情无码| 久久超碰网| 精品人妻无码一区二区三区不卡-精品人妻无码一区二区...|精品少妇一区二区三 | 国产一级特黄大片处女| 97干在线| 日本一级特级毛片视频| 久久人妻少妇| 操逼无码操逼| 91丨人妻丨国产丨丝袜| 青青草华人在线欧美在线| 日日骚 av| 九九九九九九九精品视频| 久久riav中文精品| 天天干干天天干干| 黄色高清无码无码破解免费暗网| A 在线网址| 成人性爱av| 98人妻精品一区二区色欲| 亚洲综合色图欧美| 欧美色图亚洲色,麻豆| 青青操在线亚洲视频观看欧美在线| 99色视频| 人妻在线臀日韩| 好吊妞转入那个网| 亚洲美欧999| 又摸又舔在线观看网站| 伊人国产视频| 色五月AV在线| 色欲久久99精品久久| 国产熟女精品区| 欧美日本久久精品一区| 四虎免费看黄| 欧美天堂日韩三级国产传媒| 俺去也婷婷| 91亚洲人电影| 无码一区二区三区四区五区六区七区八区九区十区视频 | 国产午夜在线观看视频| 欧美日韩另类在线播放| 免费毛片在线播放| 色吧综合网| 91蜜臀在线久久久久| 日本99热| 91在线视频免费中出| 熟妇高潮一区二区免费视频| 欧美日韩人人精品| 99re在线视频| 欧美色网| 国产精品人人爽人人做可爱福利| 国产精品美女在线一区| 99视频内射三四| 中文字幕奈奈美被公侵犯| 污污汅18禁网站在线永久免费观看| 成人a大片在线观看| 久久香蕉国产线看观看猫咪av | 久久99久久99精品天美传媒棢·纸:. | 色香伊人| 亚洲女优有码无码高清| 国产女人视频三四五区| 超碰97人妻免费在线| 精品成人动漫一区二区| 久久久久久性爱片| 亚洲天天影视色综合| 天天射天天色成人| 激情五月天中文字幕色| www.色99| 午夜毛片高清免费不卡| 亚洲人精品午夜不卡| AV一二区| 九九九九一级| 大香蕉狠狠爱| 国产精品99精品视频网站| 性爱Av免费| 色五月综合网| 18禁在线视频| 亚洲av强奸乱伦| 夜夜騷av、一區二區| 一区二区播放| 天天爽夜夜爽夜夜爽精| 亚洲啪啪性视频| 精品人妻夜夜草| 国产吹潮女在线观看| 久久系列| 欧美色视频在线| 67194国产| 99色婷婷中文字幕乱色| 亚洲综合九九| 六月激情婷婷| 天天色综合影视网| 久久久久久久国产a∨| 少妇99成人麻豆| 国产女人9999| 91视频伊人| 99在线免费视频| 九九国产热| a男人的天堂久久一级A毛片| 色婷婷视频| 91精品免费| 中文字幕天堂在线| 99热 按摩 日韩| 亚洲欧美在线丝袜| 青青草天天亲夜夜操网| 午夜无码熟妇丰满人妻| 日熟女| 日韩三级视频一区二区三区| 操逼操逼操| 久久一本大香蕉 | 婷婷丁香人妻 | 操99| 亚洲日韩东京热一区| 激情色图| 色色色网站| 综合九九| 国产福利影视| av2014 日韩在线中文字幕| 鸡巴插逼视频| 97国产综合欧美| 国产黄片精品在线| 97超级欧美| 日韩综合成人免费视频| 精品人妻一区二区三区-国产精品 一个人在线看的黄色电影网站 | 日韩欧美日韩| 97 亚洲 日韩 欧美 在线| 欧美在线天堂| 久都青青视频 | 久久久久久亚洲精品中文字幕人妻| 美女性91| 欧美亚州手机在线| 黄片www视频免费| 花野真衣| 秋霞免费无码视频日韩A片| 超碰亚洲欧美日韩无| 日本加勒比无码专区一二三| 中文字幕av乱伦| 久久九操在线观看| 国产乱码精品一区二区三区四川| 啊啊啊啊啊啊好多水| 97舔舔| 日韩免费av片高清无码| 99国产精品在线观看| 岛国片在线播放| 性性久久| 女人双腿搬开让男人桶| 91w欧美| 久久超碰免费的| 欧美老妇曰批的视频| 亚洲午夜蜜臀| 婷婷国产精品九区| 欧美极度丰满熟妇hd| 东京热双插| 天美一二三在线观看Av| 免费啪啪av| 蜜臀在线看片| 东北黄色电影| 一区二区影院| 青娱乐国产剧情av一区| 九X超碰| 人妻乱仑一区二区三区| 久久精品欧美一区蜜桃| 亚洲成人在线高清| 欧美色就是色| 三级片大波波| 亚洲成人在线播放| 青青免费在线视频一区| 高清视频一区| 久久久久网站-538在线视频-欧美永久乱码 | 国产成久久综合片| 色综九九九一区| 麻豆2区1区天美| 亚洲国产尤物yw在线观看| 亚欧洲日韩国产精品| 日韩国产十八禁| 欧美综合站| 久久黄色视频一区二区三区| 色香天天| 91综合天天看| 久久综合女优| 日韩三四五区| 日本日皮视频逼| AV一区观看| 欧美加勒比| 久久久久久久六六| 97欧美精品综合| 久久久久久久人妻| 国产亚洲精品自在线亚洲情侣| 97精品一区二区视频| 啊啊啊啊免费视频| 亚春色色| 日韩欧美久久婷婷网站| 激情啪啪视频| 久久人妻一区二区三区高清 | 欧美性爱第一页久久| 久久婷婷苹果| 欧美日韩精品久久久久东北老熟妇| 十八禁黄色成人网站观看| 91女神在线视频| 日本一级一级一级一级| 国内毛片免费h片在线| 精品成人动漫一区二区| 啪啪AV导航| 91视频伊人| 亚洲无码精品AV久久久| 操国产逼| 久久久久久亚洲Av无码| 欧美国产精品| 一区二区三区探花在线观看| 一区二区三区探花在线观看| 欧美亚洲影视| 中文乱码99| 欧美嫩性色| 婷婷五月天AV| www.色五月| 五月天综合在线| 91精品大奶人妻| 五月丁香社区婷婷日韩欧美精品影院 | 熟女一区二区| 超碰亚洲97| 插入综合网| 亚洲黄片免费在线播放| 色欲三区| 国产一区二区三区免费视频在性观看| 午夜传煤十二区精品| 亚洲天天操| 亚洲精品一区二区日本| 91搞逼视频| 国产人伦a片信息免费片| av午夜影院在线播放| 综合 欧美 亚洲 日本| 尤物一级在线免费观看| 亚洲色人妻综合| 白丝1区2区3区| 天堂涩涩| 日韩啊V| 国产熟女完整版中字| 中文有码9| 97综合久第一页| 天天躁日日躁狠狠狠躁| 白嫩少妇| 91成人在线免费视频| 免费一级视频特黄色大片| 99综合网| 青青草日韩免费观看高清在线| 麻豆a'v电影| 一区二区不卡视| 韩美日操逼| 日韩不卡a级视频专区| www.婷婷五月天| 久久久精久久久| 成人草草视频| 国产一区自拍欧美日韩| 91熟女.com| 激情婷婷黑人91| 成人国产视频在线观看| 黄色高清无码无码破解免费暗网| 91蜜臀在线久久久久| 青青草中日韩在线| 天天干天天操天天操夜夜操天天操 | 欧美最大综合网| 久久啊啊| 久草福利在线资源站| 日韩欧亚太美不卡| 一本大道青青| av午夜影院在线播放| 91无码西班牙视频在线| 亚洲精品国产无码高清| 天天做天天爱天天爽| 亚洲情色五月天| 久久9精品视频| 欧亚日韩综合精品国产| 日韩欧美加勒比| 精品在线观看视频在线| 在线情色电影 91大 | 蜜臀AV成人精品蜜臀| 成人精品视频一区二区| 九久9精品| 日日夜夜精品视频| 免费一级精品啪啪视频| 老鸭窝亚洲毛片| 蜜臀99久久精品| 韩国一级AAA| 婷婷香网站| 亚洲 无码 偷拍| 欧美性爱五月天| 欧美日综合| 亚洲啪啪视频一区二区| 99色婷婷中文字幕乱色| 大香蕉在线86| 亚洲97在线观看| www.婷婷六月天| 久久久性少妇| 91色爽欧美| 免费视频在线一区二区不卡| 69精品人人人人| 欧美1区二区三区公司| 久久不卡一区二区| 五月婷婷六月丁香网址| 激情久久日韩精品中文字幕麻豆| 久久久青青草| 一区二区三区成人高清视频| 激情人妻另类| 中文字幕丝袜国产第一页不卡| yiren97| 天天夜躁日日躁狠狠2002| 少妇毛片久久| 无码人妻一区二区三区色欲aⅴ| 天天淫人人妻日日色| 少妇高潮流水av免费| 91撸色网 玖玖网 欧美| 91丨九色丨国产丨人妻在线| 欧美传媒一区| 国产女性无套 免费观看| 久肏视频字幕| 久久综合18p| 懂色中文一区二区三区| 日韩av电影网站| 手机看片1025| 天天噜| 欧美 亚洲 大香| 亚洲精品无码久久AV| 91亚.色| 亚洲男人的天堂亚洲| 欧美综合国产精品久久丁香| 天操天操夜操夜月操月年年操操| 99热综合| 日本高清视频xxxx| 久艹99| AV天堂丝袜| 日韩高清黄片| 另类图片五月天| 97日本超碰综合| 人妻少妇被猛烈进入中| 热思思免费视频| 99精品高潮| 九九热AV| 国产偷人伦激情在线观看| 欧美国产有色电影| 日韩偷拍色图| 天天摸夜夜操视频| 天天操综合网| 亚洲av综合色区无码一| 成人影院永久免费观看网址| 久久国产精品一区二区| 妇女视频网站| www.天天干| 93人人操人人| 国产肏逼网站| 蜜屁av| 蜜桃久久久久久久久久久久| 德国一二三不卡| 国产色呦呦| 91看黄片| 91丝袜视频在线观看| 欧美熟女丝袜| 日日夜夜青青草母狗| 一区二区 韩日AV| 探花熟女,姿勢到位,體驗感也到位| 97视频在线免费观看| 精品久久久久成人码免| 91处女在线视频| 亚洲 图片 欧美 色图| 色综合色欲色综合色综合色综合| 99在线无码精品秘 入口黑人| 久久超碰97| 97亚洲在线| 亚洲区小说| 午夜福利在线合集| 国产av热热色| 国产传媒1234区| 欧美日韩亚洲五月天婷婷| 一区超碰一区| 999 久久久| 中文字幕精品人妻丝袜| 色综合久久久久| 亚洲色图殴美色图激情乱伦| 亚洲成人日韩小说| 波多野结衣一级视频| 欧美日韩国产成人高清| 亚洲不卡三级手机播放| 亚洲一区在线观看欧洲| 国产精品内射婷婷一级二| 欧美综合91| 久久黄色性爱视频| 一起草高清无码| 97免费视频在线观看视频| 色网综合网| 久久久久78| 欧美 日韩 另类 亚洲| 9超碰免费| 一区麻豆 高清中文字幕| www.高清无码诱惑一区.com | 婷婷色一区| 久久久无码国精品无码三区三区| 婷婷色色五月| 欧美极品女人的天堂| 色97| 先锋音影AV| 骚女高跟AV在线| 丰满人妻一区二区中文| 色97国产69香蕉| 中国熟妇| 国产无码精品高清| 极品白嫩美女白浆成人福利在线看| 久久99午夜精品一区人妻| 99久久精品国产高潮| 思思热在线观看| 麻豆性爱视频在线播放| 久久九操在线观看| 风韵犹存大大大大香蕉| 亚洲一区二区三区在线激情| 一区二区三区黄片免费观看| 色情婷婷| 国产综合久久久鬼色| 激情视频一二三| 亚洲丨在线| 日本阿v天堂在线观看| 蜜乳AV一区| 91丝袜美女国产| 色好看av| 日韩无码第3页| 亚洲天天在线| 中文字幕日本久久| 少妇毛片久久| 丰满熟女人妻一区二区三五十一路| 男人的天堂va在线| 成人小电影网站tex| 欧美黄片视频在线观看免费 | 蜜桃臀一区二区aV| 日本综合色图| 国产成人无码久久精品| 综合网~91综合网| 中国韩国明星一极片一区乱码毛片人妻熟女一区二区三区 | 999亚洲国产视频| 91一区二区| 亚洲91射| 亚洲 中文字幕 精品| 探花激情视频| 精品中文日韩字幕视频| 亚洲97综| 亚洲色图久久成人| 麻豆色99999| 无码不卡八戒| 天天干美少妇一区| 大香蕉伊人网WWWn0n| 国产精品一区二区密臀| 成年女人黄网站| 九九玖玖精品| 欧美日韩另类激情图片| 99久久久er直播网址| 国产欧美一区二区| 在线播放中文字幕| 伦伦成年午夜免费视频| 啊啊啊好舒服好爽啊啊啊视频| 男人天堂久久精品不卡| 亚洲成人免费中文字幕| 啊啊啊啊啊啊啊好爽不要| 97视频免费| 婷婷五月色| 懂色av中文字幕| 2019天天干天天操| 夜夜嗷嗷一区二区| 91影视亚洲| 9久精品| 韩国午夜理伦三级好看| 另类 综合 日韩 欧美 亚洲| 国产午夜福利专区综合| 久久肏大逼| 岛国999| 亚洲成人日韩小说| 免费看污网址| 中文字幕一区二区在线日韩精品| 91欧美性| 成人免费不卡在线视频| 蜜臀av中文字幕| 日本精品无码三级网站| 亚洲丰满很很操| 丰满人妻一区二区三区四区| 亚洲国产精品乱码在线观看| 97香蕉网| 天天摸夜夜摸| 欧美亚洲综合色| 亚91网| 嗯~啊~快点 死我视频| 免费a v| 婷婷色香| 377p欧洲日本亚洲大胆| 殴美综合色88| 亚州操逼图| 欧美色图片欧美色图| 久久精品国产亚洲AV高级北京| 天天操天天看| 日韩精品99999| 又大又大又大又粗爽高潮观看| 欧洲免费一区二| 一个国产在线综合网站| 欧洲一区二区三区四区在线观看| 国产乱伦性爱AV| 免费观看国产小粉嫩喷水精品午| 国产乱婷婷精品二区三区| 国产精品999aaa| 校园春色中文字幕AV| 成人性爱高清视频免费看| 日本道人妻久久久在线不卡色视频| 欧美99| 色与欲影视天天看综合网| 亚洲天堂性爱| 国产精品免费日韩| 中出91视频| 青青草九九九九九| 欧美日韩性爱操大逼| 日韩一二三区| 天天摸夜夜操视频| 在线日韩视频| 伊人网综合在线视频| 99热欧美| 色偷偷色偷偷欧美日韩| 日韩精品一区二区三区色欲| 狠狠操官网| 国产91 丝袜在线播放| 亚洲淫乱骚妇AV| 日韩午夜啪啪视频| 91精品国产日韩欧美综合| 亚洲 日本 不卡| 欧洲精品在线播放| 婷婷五月天激情网| 日韩国产乱子伦App| 欧美激情专区| 天天影视91看看| 青青伊人这里只有精品| 久久久久国产亚洲一区欧美色图日韩| 草草网站影院白丝内射| 无码操逼视频一下| 唯美清纯 妖精视频| 亚洲欧洲自拍图片专区满春格| 91色s| 加勒比海成人视频网| 久久精品欧美一区蜜桃| 国产呦精品一区二区三区下载| 日韩欧美大片免费高清啪啪| 久久九色| 人妻精品一区二区三区| 四虎在线观看网站| 国产精品视频播放| 日日夜夜青青草母狗| 密桃99999| 97在线观看免费| 白丝被操91| 麻豆蜜桃视频在线观看| 一区二区乱码福利| 亚洲乱码尤物193YW| 夜夜爽夜夜操| 肉丝网站91| 天天操人人操狠狠插| 久热精品在线| 大吊色| 精品一区二区人妖| 日韩性爱小视频| 欧美性第1页| 久久綜合很很很| 激情五月婷| 亚洲av综合色| 欧美一区二区男人天堂| 天堂精品一区| 欧美人人天天网| 久久夜色一区二区| 91狠狠色丁香婷婷综合久久精品| 日韩字幕一区| 色图综合| 激情内射| 草久久久| 精品女人999| 人人操人人狠狠操| 91快色色色色色| 91在线超高颜值国产| 亚洲成人精品在线一区| JIZZJIZZ亚洲女人被躁| 国产精品爆乳懂色蜜乳| 男人的天堂2018| 综合欧美亚洲| 97香蕉网| 五月亭亭六月丁香| 精品少妇99| 超碰97丝袜| 中文字幕精品探花视频| 另类天堂| 78p欧美| 拍拍拍拍大尺度黄色三级片拍拍拍拍拍照 | 久久久精久久久| 亚洲精品丝袜| 美欧老女人97| 色原狠狠天天天| 精品久久九| 夜夜操夜夜高潮夜夜爽国产精品区| 色天使AV天堂| 91精片| 波多野42部无码喷潮在线观看| 亚洲小电影免费涩涩成人在线高清 | 午夜福利久久久噜久噜久久综合| 欧美精品偷拍| 欧美美女视频| 岛国视频一二三区| 午夜精品久久久久久久男人的天堂| 激情综合五月| 97丝袜亚洲在线播放| 少妇久久久久久久久| 亚洲图片激情综合另类| 亚洲色五月| daxiangjiao你懂的| 偷拍偷窥与盗摄视频专区| 97国产高清视频在线观看| 日韩人妻资源网| 四虎精品亚洲| 国产欧美日韩一区二区三区| 六九九九| 日韩猛交| 一道本久久棕合爱| 中文字幕人乱码中文字的预防方法 | 九九久久国产精品| 久久久少妇诱惑精品视频| 亚洲欧美一区二区不卡视频播放 | 免费亚洲国产精品久久一区| 久久天天艹| 女人的久久久| 久久久日本电影| 久操精品网| 老熟妇综合| 亚洲中文字幕精品一区| 后入 亚洲 美女 射| 亚洲日韩人妻中文字幕一区| 精品久久久久瑟瑟| 亚洲天堂男人| 天天看特黄的免费网站| 777琪琪午夜免费A片| 91色五月俺来也| 激情欧美97| 欧美成人都市人妻| 日韩欧美性吧婷婷乱伦大香蕉| 狠狠综合网| 久久久久久一日韩字幕无码| 97 九色| 夜色AV无码手机在线影院| av天堂加勒比| 精品久久99| 18禁免费视频| 欧美 日韩第一性色| 欧美劲爆视频一区二区| 噜噜噜噜天天狠狠| 91欧美美女日韩国产婷婷| 大香蕉丝袜一级片| 熟女探花啪啪| 99re6国产精品99re| 东北黄色电影| 黄色视频特级毛片| 亚洲色婷婷久久91| 欧美亚洲特P| AV丝袜少妇| 97自拍视频在线| 国产一进一出视频网站| 男人的天堂com| 超碰97最新人妻| 欲色综合| 日本在线观看网址| 黑人与人妻| 性色一线| 天美av在线观看| 狠狠色综合网| 日本色色色色色视频| 秋霞免费无码视频日韩A片| 久久老熟女| 蜜桃丰满熟妇av无码区不卡| 亚洲Av噜噜一区二区三区妖精| caorenqi shipin| 成人性爱电影网| 亚洲第一无码播放立川理惠| 视频国产精品未满十八禁止在线观看| yaouchengrenav| 成人免费性爱视视| 国产精品懂色tv影视免费观看| 丰满熟妇大乳做爰| 久久久青草青青国产亚洲免观精品高清完整版_97久久综合区小说区图片区,国精品 | 亚洲欧美黄| 97欧美日韩综合| 亚州欧美在线| 亚洲Av诱惑| 欧美影院一区二区三区| 亚洲密乳AV| 久操凹凸视频| 澳门特级毛片免费观看| 亚洲成人av色网| 日韩乱码av| 天天肏美女| 91九久| 人人 操人人 操人人| 老外又粗又长一晚做五次| 999亚洲国产视频| 国产成人网站在线观看| 东北夫妻性偷拍| 日夜干射色啊| 亚洲精品国产拍免费91在线| 91无遮挡| 日韩欧美亚洲一区二区三区影院| 开心五月婷婷激情| 欧美三级免费伊人| 亚洲高清欧美总合| 亚洲精品毛片在线观看| 在线观看亚洲专区| 色婷婷久久| 成人AV素股で擦久久| 日本久久综合| 综合色91| 日本视频在线观看污污污| 多乙久久久久久| 啊啊啊啊啊在线观看网址 | 亚洲se电影| 亚洲av综合伊人久久| 人妻熟女字幕一区二区| 久久人妻无码毛片A片麻豆| 操国产高清| 99re这里只有精品中心播放 | 人妻献身系列第54部| 日韩人妻操B| 人妻久久久久久| 97在线视频网站| 日本一区二区三区四区免费观看| 九九热免费国产视频婷婷伊人 | 久久久精品日本一道| 欧美色综合图片| 天天视频黄网站| 青青草导航在线视频| 日韩性爱电影一区| 久久天堂网| 四虎影院成年人片| 国产国产亚洲一二三久久| 裸体女人草逼视频播放一区,二区,三区,四区,五区| 欧美日韩国产人人| 免费伦费视频在线观看| 国产热av| 最新欧美色网| 在线岛| 后入日本1234| 操美女高潮抽搐白浆| 伊人网在线点播| 在线综合 亚洲 欧美中文字幕 | 欧美亚洲一级在线观看| 精品人妻无码一区二区三区不卡-精品人妻无码一区二区...|精品少妇一区二区三 | 超碰在线成人电影| 亚码激情| 91午夜无码| 99热这里只有精品1| 91暧暧| 成人美女av| 三级AV入口| 好吊爽好吊爽在线视频,中文字幕精品一区二区日本,国产良妇出轨视频在线观看, | 欧美中文字幕男人天堂久久精品| 成全动漫视频观看免费下载| 欧美色图小说综合| 亚洲五月丁香花狠狠干一区二区三区 | 亚洲中文字幕三级在线| 日产操逼| 女生看匆91网站| 欧美日韩国产人人| 色av中文字幕| 综合色久| www网站黄| 怡红院一区二区熟女人妻| 午夜福利激情在线视频| 日日夜夜精品视频| 亚洲se91| 久久啊啊| 日夜伊人网| 色与欲影视| 欧美色97| 九九九九九精品视频| 高精欧美色| 超碰综合97在线| 99热线麻豆 | 极品销魂美女一区二区| 性91| 久久AV无码AV| 欧美不卡五十路| 国产精品日本无码A片| 金莲网址| 国产精品蜜乳AV| 天美麻花大全视频| 综合熟女| 欧美 中文字幕 一区| 宗合情欲网| 欧美白嫩女HD| 欧美论理片| 欧美综合第一页| 国产捆绑一区| 岛国网址国产| 日韩草久视频| 中文字幕久久精视频久久大全| 啊啊啊啊操死我了| 97超碰中文在线| 黄视频免费| 女人喷水视频在线观看| 国产AV激情无码久久无码| 天天上日日上日韩精品| 久久双插| 无码日韩人妻av一| 国产亚洲色婷婷久久99精品91葵花宝典| 国产色精品午夜大片| 中文字幕一区电影在线观看| 丁香五月久久| 久久內射| 成人精品在线免费视频| 欧美系列在线一区二区| 久久只有精品一区二区三区| 亚洲色性| 亚洲精品乱码久久久久久蜜桃麻豆 | 91爱看| 男女啪啪啪18禁网站| 99久久婷婷丁香| 热天堂一区二区| 夜夜高潮夜夜爽高清视频一 | 九九热AV| 国产性爱欧美性爱在线| 日本爽爽爽爽爽爽免费视频| 巨爆乳肉感一区二区三区竹菊影视| 一区二区三区日韩欧美| 青草成人免费视频一COm| 一区二区三区免费岛国片| 丝袜翘臀后入欧美校园亚洲自拍另类小说一区中文字幕少妇诱惑 | 五月天色色色| 91爰爱欧美| 91丝袜激情在线 | 两性综合网| 极品AV网站在线观看| 黄色人人| 综合性视频99| 综合婷婷| 操国产逼| 激情黄色五月天| 激情综合婷婷| 欧美人妻制服| 亚欧美天堂在线| 亚洲国产熟妇综合色专区| 婷婷精品| 国产一区二区三区白丝| 天美精品一区二区三区四区在线观看 | 懂色影视久久| 久久极品一区二区| 精品日韩人妻视频| 国产精品九九| 韩日精品四区| 国产一区二区三区视频在线看| 综合久久99亚洲人妻中文在线| 在线无码操| 亚洲 小说 欧美 激情 另类| 国产精品久久久久久久免牛肉蒲团| 性爱av在线免费观看| 亚洲天堂男人| 色69大色97香蕉| 96AV久久久| 正在播放:深夜激情大战,自带黑丝袜全力输出骚穴 | 9997se| 超碰在线人妻不卡| 色99色| 高清国产av无码| 不卡av在线中文字幕| 国产在线能看的你懂的| 黄页网站成人免费| 蜜桃丰满熟妇av无码区不卡| 夜夜中出国产| 九九AV| 一起草av| 99色色| 色播五月丁香| 蜜臀av在线播放一区二区三区| 久久99综合| 看一级特黄a大一片| 性饥渴少妇av无码毛片| 美女啊啊啊啊啊啊| 日韩99999| 中文字幕亚洲永久精品| 96精品久久久久久久久| 亚洲一区二区AV| 亚洲日韩欧美一区二区| 成人小说另类在线| 久久久久久久伊人精品| 国产高清午夜成人在线观看| 不卡中文字幕aⅴ在线| 26uuu最新| 黄片免费久久久久久久| 91成人久久| 一本道综合色图| 日韩美女久久一区二区三区| 91人妻丝袜无码| 欧洲亚洲天堂精品 | 伊人久操| AV天堂丝袜| 二三四区精品| 五月婷婷丁香| 欧美1区二区三区公司| 91热爆在线| 亚洲全色网| 天天做天天爱天天爽AV| 欧美亚洲天堂| 久久久不卡区一区二区三区久久久| 操逼逼中文字幕| 国产日韩久久| 欧美色图成人网一区二区 | 日本欧美亚洲高清在线看| 丝袜天堂网| 91美女在线精品视频| 久久久久久国产无码精品| 超碰在线免费一区二区三区| 日本男人插女人的逼黄色| 翔田千里av一区二区三区| 呦呦一区| 免费超碰97久久| 丁香五月色| 亚洲天堂AV在线播放| 久久久一区二区三区麻豆| 成人熟女区| 大香蕉操久久| 日本操逼aaaaa| 91亚洲综合在线| 强奸熟女一区二区三区| 91肏屄网| 日本午夜久久电影| 精品成人动漫一区二区| 亚洲牲交| 91女优在线观看 | 泰国AV在线观看| 亚卅熟女乱色| 亚洲无码超碰免费| 欧美天堂在线| 风月影院男女十八禁| 国内精品久久国产,www香蕉久久五月丁香,亚洲欧美日韩精品永久在线,日本精品一 | 在线观看AV片| 91人妻爽爽人人做人人澡| 欧美v亚洲v综合v国产v妖精| 欧美天天综合网版| 欧洲站一级二级三级h| 蜜桃色色网站视频三区| 狠狠操综合| 亚欧无码在线| 亚一综合久久久久久久久久| 91精品国产91久久青草| 92一区二区| 九九九偷拍| 天天爱综合网| AV男人天堂网| 日本蜜桃| 美性中文综合网| 97干色天堂| 国产农村妇女精品一| 欧美日韩超碰在线| 97爱免费插| 人妻少妇久久久| 成人电影一区| 婷婷久久综合| 亚洲高清在线| 红杏大香蕉| 九九热在线精品视频| 99色热| 色色五月丁香| 丁香六月激情| 精品国产一区二区三区av在线资源| 国产网红精品| 亚洲综合精品国产一区| 东北丰满熟女国产一区| 午夜寂寞欧美| 操屄不卡视频| 欧美一级三级| 精品一二三区久久AAA片| av网页一区二区三区| 欧美亚洲| 国产成人自拍视频在线|