2014年3月30日日曜日

開発環境

Head First Java 第2版 ―頭とからだで覚えるJavaの基本(Kathy Sierra (著)、Bert Bates (著)、島田 秋雄 (監修)、神戸 博之 (監修)、高坂 一城 (監修)、夏目 大 (翻訳)、オライリージャパン)の12章(GUIの基礎)、エクササイズ(コンパイラになってみよう(p.395))を解いてみる。

エクササイズ(コンパイラになってみよう(p.395))

コード(BBEdit, Emacs)

InnerButton.java

import javax.swing.*;
import java.awt.*;
import java.awt.event.*;

class InnerButton {
    JFrame frame;
    JButton b;

    public static void main(String [] args) {
        InnerButton gui = new InnerButton();
        gui.go();
    }

    public void go() {
        frame = new JFrame();
        frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

        b = new JButton("A");

        // Listenerを登録
        b.addActionListener(new BListener());

        frame.getContentPane().add(BorderLayout.SOUTH, b);
        frame.setSize(200, 100);
        frame.setVisible(true);
    }

    // サブクラス(extends)dえはなくインターフェース(implements)
    class BListener implements ActionListener {
        public void actionPerformed(ActionEvent e) {
            if (b.getText().equals("A")) {
                b.setText("B");
            } else {
                b.setText("A");
            }
        }
    }
}

入出力結果(Terminal)

$ javac InnerButton.java && java InnerButton
$

0 コメント:

コメントを投稿