亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? methodareapanel.java

?? 《深入java虛擬機》一書的光盤
?? JAVA
字號:
/** Copyright (c) 1996-1999 Bill Venners. All Rights Reserved.** This Java source file is part of the Interactive Illustrations Web* Site, which is delivered in the applets directory of the CD-ROM* that accompanies the book "Inside the Java 2 Virtual Machine" by Bill* Venners, published by McGraw-Hill, 1999, ISBN: 0-07-135093-4. This* source file is provided for evaluation purposes only, but you can* redistribute it under certain conditions, described in the full* copyright notice below.** Full Copyright Notice:** All the web pages and Java applets delivered in the applets* directory of the CD-ROM, consisting of ".html," ".gif," ".class,"* and ".java" files, are copyrighted (c) 1996-1999 by Bill* Venners, and all rights are reserved.  This material may be copied* and placed on any commercial or non-commercial web server on any* network (including the internet) provided that the following* guidelines are followed:** a. All the web pages and Java Applets (".html," ".gif," ".class,"* and ".java" files), including the source code, that are delivered* in the applets directory of the CD-ROM that* accompanies the book must be published together on the same web* site.** b. All the web pages and Java Applets (".html," ".gif," ".class,"* and ".java" files) must be published "as is" and may not be altered* in any way.** c. All use and access to this web site must be free, and no fees* can be charged to view these materials, unless express written* permission is obtained from Bill Venners.** d. The web pages and Java Applets may not be distributed on any* media, other than a web server on a network, and may not accompany* any book or publication.** BILL VENNERS MAKES NO REPRESENTATIONS OR WARRANTIES ABOUT THE* SUITABILITY OF THE SOFTWARE, EITHER EXPRESS OR IMPLIED, INCLUDING* BUT NOT LIMITED TO THE IMPLIED WARRANTIES OF MERCHANTABILITY,* FITNESS FOR PARTICULAR PURPOSE, OR NON-INFRINGEMENT.  BILL VENNERS* SHALL NOT BE LIABLE FOR ANY DAMAGES SUFFERED BY A LICENSEE AS A* RESULT OF USING, MODIFYING OR DISTRIBUTING THIS SOFTWARE OR ITS* DERIVATIVES.*/package COM.artima.jvmsim;import java.awt.*;/*** This class represents that portion of the user interface* that displays the bytecodes in the method area.** @author  Bill Venners*/class MethodAreaPanel extends Panel {    private int memoryLocationsVisibleCount;    private Label[] pointer;    private Label[] address;    private Label[] byteValue;    private Label[] logicalValue;    private int[] theProgram;    private String[] theMnemonics;    private int firstVisibleRow;    private int currentProgramCounterRow;    private ColoredLabel pcRegister;    MethodAreaPanel(int memoryLocationsVisibleCount, int[] theProgram,        String[] theMnemonics) {        this.memoryLocationsVisibleCount = memoryLocationsVisibleCount;        this.theProgram = theProgram;        this.theMnemonics = theMnemonics;        pointer = new Label[memoryLocationsVisibleCount];        address = new Label[memoryLocationsVisibleCount];        byteValue = new Label[memoryLocationsVisibleCount];        logicalValue = new Label[memoryLocationsVisibleCount];        // Initialize the title        Label title = new Label(StringTable.theMethod, Label.CENTER);        title.setFont(new Font("Helvetica", Font.BOLD, 11));        // Initialize the labelled pc register panel        Panel registerPanel = new Panel();        registerPanel.setLayout(new GridLayout(1, 2, 5, 5));        pcRegister = new ColoredLabel("00000000", Label.CENTER, Color.lightGray);        pcRegister.setFont(new Font("TimesRoman", Font.PLAIN, 11));        Label pcRegTitle = new Label(StringTable.pc, Label.RIGHT);        pcRegTitle.setFont(new Font("Helvetica", Font.ITALIC, 11));        registerPanel.add(pcRegTitle);        registerPanel.add(pcRegister);        // Put the title and the pc register panel on the same panel        Panel titleRegisterPanel = new Panel();        titleRegisterPanel.setLayout(new BorderLayout());        titleRegisterPanel.add("West", registerPanel);        titleRegisterPanel.add("Center", title);        // Initialize column titles        Panel columnTitles = new Panel();        int[] hComponentCellWidths = { 2, 2, 2, 3 };        columnTitles.setLayout(new GridSnapLayout(1, 9, hComponentCellWidths));        columnTitles.setFont(new Font("Helvetica", Font.ITALIC, 11));        columnTitles.add(new Label("", Label.CENTER));        columnTitles.add(new Label(StringTable.offset, Label.CENTER));        columnTitles.add(new Label(StringTable.bytecodes, Label.CENTER));        columnTitles.add(new Label(StringTable.mnemonics, Label.LEFT));        // Initialize the 4 column view of the method        Panel methodView = new Panel();        methodView.setLayout(new GridSnapLayout(memoryLocationsVisibleCount, 9, hComponentCellWidths));        methodView.setBackground(Color.lightGray);        Font plainFont = new Font("TimesRoman", Font.PLAIN, 11);        methodView.setFont(plainFont);        Font italicFont = new Font("TimesRoman", Font.ITALIC, 11);        for (int i = 0; i < memoryLocationsVisibleCount; ++i) {            pointer[i] = new Label("", Label.RIGHT);            pointer[i].setFont(italicFont);            methodView.add(pointer[i]);            address[i] = new Label("", Label.CENTER);            methodView.add(address[i]);            byteValue[i] = new Label("", Label.CENTER);            methodView.add(byteValue[i]);            logicalValue[i] = new Label("", Label.LEFT);            methodView.add(logicalValue[i]);        }        Panel methodViewWithTitles = new Panel();        methodViewWithTitles.setLayout(new BorderLayout());        methodViewWithTitles.add("North", columnTitles);        methodViewWithTitles.add("Center", methodView);        setLayout(new BorderLayout());        add("North", titleRegisterPanel);        add("Center", methodViewWithTitles);        // Call updateView() first because updateProgramCounter() only changes        // the address, byte, and mnemonic columns if the program counter has        // moved off the page.        updateView(0);        updateProgramCounter(0);    }    // UpdateView() repaints the rightmost three columns: address, byte, and mnemonic    // starting with the passed initialaddress of theProgram.    private void updateView(int initialAddress){        int filledRowsCount = theProgram.length < memoryLocationsVisibleCount ?            theProgram.length : memoryLocationsVisibleCount;        for (int i = 0; i < filledRowsCount; ++i) {            address[i].setText(Integer.toString(initialAddress + i));            int theByte = theProgram[initialAddress + i];            HexString byteValueHexString = new HexString(theByte, 2);            byteValue[i].setText(byteValueHexString.getString());            String logicalValueStr = theMnemonics[initialAddress + i];            logicalValue[i].setText(logicalValueStr);        }    }    // Will change the pc register and pc> pointer. If necessary, will also shift    // the other three columns--address, byte, and mnemonic--by calling updateView().    public void updateProgramCounter(int newPCValue) {        // Erase the old "pc>" pointer        pointer[currentProgramCounterRow].setText("");        // Only change the address, byte, and mnemonic columns if the program        // counter has gone off the edge of the screen.        if (newPCValue - firstVisibleRow >= memoryLocationsVisibleCount) {            firstVisibleRow = newPCValue;            if (firstVisibleRow > theProgram.length - memoryLocationsVisibleCount) {                firstVisibleRow = theProgram.length - memoryLocationsVisibleCount;            }            updateView(firstVisibleRow);        }        else if (newPCValue < firstVisibleRow) {            firstVisibleRow = newPCValue;            updateView(firstVisibleRow);        }        // Place the "pc>" pointer        pointer[newPCValue - firstVisibleRow].setText(StringTable.pcPointer);        currentProgramCounterRow = newPCValue - firstVisibleRow;        // Set the program counter register        //HexString hexString = new HexString(newPCValue, 8);        pcRegister.setLabelText("    " + Integer.toString(newPCValue));    }    public Insets insets() {        return new Insets(5, 5, 5, 5);    }}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
色噜噜狠狠成人中文综合| 91一区在线观看| 精品一区二区久久| 亚洲人xxxx| 国产偷国产偷亚洲高清人白洁| 91久久精品午夜一区二区| 国产一区美女在线| 亚洲大型综合色站| 中文字幕在线不卡国产视频| 日韩欧美国产1| 欧美亚州韩日在线看免费版国语版| 国产福利一区二区三区视频| 日韩av一区二区三区| 亚洲天堂免费看| 国产精品九色蝌蚪自拍| 26uuu国产电影一区二区| 欧美日韩国产小视频在线观看| 91香蕉视频mp4| 成人午夜视频网站| 国产精品1区2区3区| 美女一区二区三区在线观看| 天堂影院一区二区| 亚洲无线码一区二区三区| 亚洲精品第一国产综合野| 国产精品欧美一区二区三区| 国产午夜精品在线观看| 久久久综合九色合综国产精品| 日韩一区二区三区电影| 666欧美在线视频| 在线91免费看| 日韩三级伦理片妻子的秘密按摩| 欧美精品乱人伦久久久久久| 欧美私人免费视频| 91成人免费电影| 欧美丝袜自拍制服另类| 日本一二三不卡| 国产欧美日本一区二区三区| 久久婷婷综合激情| 国产三级三级三级精品8ⅰ区| 精品国产3级a| 久久久五月婷婷| 国产欧美日韩精品一区| 亚洲国产成人自拍| 亚洲视频你懂的| 一级女性全黄久久生活片免费| 一区二区三区不卡视频| 亚洲444eee在线观看| 首页综合国产亚洲丝袜| 麻豆精品久久久| 国产精一区二区三区| 国产高清一区日本| 99在线视频精品| 欧洲人成人精品| 91精品国产综合久久久久| 欧美大片在线观看一区| 国产日韩精品一区二区三区| 亚洲三级在线免费| 午夜精品免费在线观看| 美女视频黄免费的久久| 国产91富婆露脸刺激对白| 91丨porny丨国产入口| 欧美午夜不卡在线观看免费| 日韩一区二区三区视频| 欧美极品aⅴ影院| 亚洲九九爱视频| 青青草国产精品亚洲专区无| 国产一区二区影院| 色欧美片视频在线观看 | 麻豆91精品91久久久的内涵| 蜜桃视频在线一区| 国产成人一区在线| 日本韩国欧美三级| 欧美岛国在线观看| ...av二区三区久久精品| 婷婷成人激情在线网| 国产一区二区成人久久免费影院| 99久久国产免费看| 欧美一级日韩免费不卡| 国产精品欧美一区二区三区| 婷婷中文字幕一区三区| 国产精品亚洲视频| 欧美日韩高清一区二区| 欧美一区2区视频在线观看| 风间由美一区二区三区在线观看 | 婷婷国产v国产偷v亚洲高清| 狠狠色丁香婷婷综合久久片| 一本一本大道香蕉久在线精品 | 2020国产精品自拍| 国产电影精品久久禁18| 日本久久精品电影| www激情久久| 亚洲一区二区在线观看视频 | 欧美日韩国产经典色站一区二区三区| 精品少妇一区二区三区视频免付费| 中文字幕av在线一区二区三区| 日韩中文欧美在线| av中文字幕不卡| 精品91自产拍在线观看一区| 亚洲一区二区五区| 成人av一区二区三区| 日韩免费高清视频| 亚洲综合免费观看高清完整版| 日本大胆欧美人术艺术动态| 波多野结衣的一区二区三区| 国产亚洲欧美日韩俺去了| 亚洲不卡在线观看| 色综合色综合色综合色综合色综合 | 亚洲国产成人自拍| 老司机精品视频一区二区三区| 在线观看亚洲精品视频| 国产精品久久久久久久蜜臀| 久久99国产精品久久| 欧美男人的天堂一二区| 亚洲黄色片在线观看| 成人免费av在线| 久久精品一区二区三区av| 久久国产精品无码网站| 日韩亚洲国产中文字幕欧美| 亚洲不卡av一区二区三区| 在线国产电影不卡| 亚洲精品欧美激情| 色一情一伦一子一伦一区| 亚洲欧洲国产日韩| 成人av网站免费| 中文一区二区在线观看| 国产成人精品亚洲777人妖| 久久综合999| 国产一区二区在线看| 久久欧美中文字幕| 亚洲国产精品影院| 99r国产精品| 亚洲视频精选在线| 99精品1区2区| 亚洲人成小说网站色在线| www.成人网.com| 亚洲色图丝袜美腿| 91精品福利视频| 亚洲国产日韩一区二区| 欧美少妇一区二区| 日本欧美一区二区三区| 欧美一区二区精品在线| 麻豆精品久久久| 日韩经典中文字幕一区| 欧美一卡二卡三卡四卡| 久久99久久久久久久久久久| 精品国产乱码久久久久久影片| 国产一区欧美一区| 国产精品乱码一区二三区小蝌蚪| 粉嫩av亚洲一区二区图片| 国产精品灌醉下药二区| 欧美综合一区二区| 无吗不卡中文字幕| 欧美精品一区二| 成人sese在线| 亚洲一区二区三区中文字幕| 5566中文字幕一区二区电影| 国产一区二区福利视频| 一区精品在线播放| 6080国产精品一区二区| 国产一区二区三区蝌蚪| 中文字幕一区二区不卡| 欧美人与z0zoxxxx视频| 国产精品一区二区免费不卡| 亚洲欧美日韩小说| 欧美一区二区高清| av中文字幕亚洲| 日韩国产一区二| 国产精品美女视频| 88在线观看91蜜桃国自产| 国产精品一区二区久久不卡| 亚洲免费观看视频| 欧美一区二区福利视频| 成人av电影免费在线播放| 午夜日韩在线电影| 久久五月婷婷丁香社区| 在线日韩av片| 欧美大片国产精品| 中文字幕日韩欧美一区二区三区| 亚洲另类色综合网站| 蜜臀久久99精品久久久画质超高清| 在线中文字幕一区| 精品日韩欧美在线| 伊人开心综合网| 成人精品国产免费网站| 日韩中文字幕91| 国产精品不卡视频| 欧美大片免费久久精品三p| 色婷婷综合久久久| 国产一区二区免费在线| 午夜精品久久久久影视| 国产精品久久久久aaaa樱花| 欧美xxxx在线观看| 欧美午夜不卡在线观看免费| 国产91丝袜在线播放0| 免费xxxx性欧美18vr| 夜夜嗨av一区二区三区中文字幕 | 精品国产制服丝袜高跟| 在线观看三级视频欧美| 波多野结衣中文字幕一区| 国产自产2019最新不卡|