• 大小:
    文件类型: .rar
    金币: 1
    下载: 0 次
    发布日期: 2023-06-04
  • 语言: Java
  • 标签: java  

资源简介

java编程思想第四版——中文版(附学习笔记)

资源截图

代码片段和文件信息

//: BangBean.java
// A graphical Bean
package bangbean;
import java.awt.*;
import java.awt.event.*;
import java.io.*;
import java.util.*;

public class BangBean extends Canvas
     implements Serializable {
  protected int xm ym;
  protected int cSize = 20; // Circle size
  protected String text = “Bang!“;
  protected int fontSize = 48;
  protected Color tColor = Color.red;
  protected ActionListener actionListener;
  public BangBean() {
    addMouseListener(new ML());
    addMouseMotionListener(new MML());
  }
  public int getCircleSize() { return cSize; }
  public void setCircleSize(int newSize) {
    cSize = newSize;
  }
  public String getBangText() { return text; }
  public void setBangText(String newText) {
    text = newText;
  }
  public int getFontSize() { return fontSize; }
  public void setFontSize(int newSize) {
    fontSize = newSize;
  }
  public Color getTextColor() { return tColor; }
  public void setTextColor(Color newColor) {
    tColor = newColor;
  }
  public void paint(Graphics g) {
    g.setColor(Color.black);
    g.drawOval(xm - cSize/2 ym - cSize/2 
      cSize cSize);
  }
  // This is a unicast listener which is
  // the simplest form of listener management:
  public void addActionListener (
      ActionListener l) 
        throws TooManyListenersException {
    if(actionListener != null)
      throw new TooManyListenersException();
    actionListener = l;
  }
  public void removeActionListener(
      ActionListener l) {
    actionListener = null;
  }
  class ML extends MouseAdapter {
    public void mousePressed(MouseEvent e) {
      Graphics g = getGraphics();
      g.setColor(tColor);
      g.setFont(
        new Font(
          “TimesRoman“ Font.BOLD fontSize));
      int width = 
        g.getFontMetrics().stringWidth(text);
      g.drawString(text 
        (getSize().width - width) /2
        getSize().height/2);
      g.dispose();
      // Call the listener‘s method:
      if(actionListener != null)
        actionListener.actionPerformed(
          new ActionEvent(BangBean.this
            ActionEvent.ACTION_PERFORMED null));
    }
  }
  class MML extends MouseMotionAdapter {
    public void mouseMoved(MouseEvent e) {
      xm = e.getX();
      ym = e.getY();
      repaint();
    }
  }
  public Dimension getPreferredSize() {
    return new Dimension(200 200);
  }
  // Testing the BangBean:
  public static void main(String[] args) {
    BangBean bb = new BangBean();
    try {
      bb.addActionListener(new BBL());
    } catch(TooManyListenersException e) {}
    frame aframe = new frame(“BangBean Test“);
    aframe.addWindowListener(
      new WindowAdapter() {
        public void windowClosing(WindowEvent e) {
          System.exit(0);
        }
      });
    aframe.add(bb BorderLayout.CENTER);
    aframe.setSize(300300);
    aframe.setVisible(true);
  }
  // During testing send action information
  /

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----

     文件          0  2001-01-20 04:59  java编程思想第四版(附笔记)\Java编程思想\code1\bangbean\1.files

     文件       3182  2001-01-20 04:59  java编程思想第四版(附笔记)\Java编程思想\code1\bangbean\BangBean.java

     文件          0  2001-01-20 04:59  java编程思想第四版(附笔记)\Java编程思想\code1\c02\1.files

     文件        846  2001-01-20 04:59  java编程思想第四版(附笔记)\Java编程思想\code1\c02\Property.java

     文件          0  2001-01-20 04:59  java编程思想第四版(附笔记)\Java编程思想\code1\c03\23.files

     文件       7893  2001-01-20 04:59  java编程思想第四版(附笔记)\Java编程思想\code1\c03\AllOps.java

     文件        534  2001-01-20 04:59  java编程思想第四版(附笔记)\Java编程思想\code1\c03\Assignment.java

     文件        461  2001-01-20 04:59  java编程思想第四版(附笔记)\Java编程思想\code1\c03\AutoInc.java

     文件       2041  2001-01-20 04:59  java编程思想第四版(附笔记)\Java编程思想\code1\c03\BitManipulation.java

     文件        876  2001-01-20 04:59  java编程思想第四版(附笔记)\Java编程思想\code1\c03\Bool.java

     文件        557  2001-01-20 04:59  java编程思想第四版(附笔记)\Java编程思想\code1\c03\BreakAndContinue.java

     文件        627  2001-01-20 04:59  java编程思想第四版(附笔记)\Java编程思想\code1\c03\CastingNumbers.java

     文件        236  2001-01-20 04:59  java编程思想第四版(附笔记)\Java编程思想\code1\c03\CommaOperator.java

     文件        220  2001-01-20 04:59  java编程思想第四版(附笔记)\Java编程思想\code1\c03\EqualsMethod.java

     文件        264  2001-01-20 04:59  java编程思想第四版(附笔记)\Java编程思想\code1\c03\EqualsMethod2.java

     文件        248  2001-01-20 04:59  java编程思想第四版(附笔记)\Java编程思想\code1\c03\Equivalence.java

     文件       1104  2001-01-20 04:59  java编程思想第四版(附笔记)\Java编程思想\code1\c03\LabeledFor.java

     文件        702  2001-01-20 04:59  java编程思想第四版(附笔记)\Java编程思想\code1\c03\LabeledWhile.java

     文件        345  2001-01-20 04:59  java编程思想第四版(附笔记)\Java编程思想\code1\c03\ListCharacters.java

     文件        742  2001-01-20 04:59  java编程思想第四版(附笔记)\Java编程思想\code1\c03\Literals.java

     文件       1505  2001-01-20 04:59  java编程思想第四版(附笔记)\Java编程思想\code1\c03\MathOps.java

     文件        333  2001-01-20 04:59  java编程思想第四版(附笔记)\Java编程思想\code1\c03\Overflow.java

     文件        382  2001-01-20 04:59  java编程思想第四版(附笔记)\Java编程思想\code1\c03\Passobject.java

     文件        672  2001-01-20 04:59  java编程思想第四版(附笔记)\Java编程思想\code1\c03\RandomBounds.java

     文件        803  2001-01-20 04:59  java编程思想第四版(附笔记)\Java编程思想\code1\c03\ShortCircuit.java

     文件        381  2001-01-20 04:59  java编程思想第四版(附笔记)\Java编程思想\code1\c03\URShift.java

     文件        675  2001-01-20 04:59  java编程思想第四版(附笔记)\Java编程思想\code1\c03\VowelsAndConsonants.java

     文件        242  2001-01-20 04:59  java编程思想第四版(附笔记)\Java编程思想\code1\c03\WhileTest.java

     文件          0  2001-01-20 04:59  java编程思想第四版(附笔记)\Java编程思想\code1\c04\20.files

     文件        574  2001-01-20 04:59  java编程思想第四版(附笔记)\Java编程思想\code1\c04\ArrayClassObj.java

............此处省略1609个文件信息

评论

共有 条评论