top
課題:講義資料のJavaアプレットを参考に、簡単なディスプレイ出力Javaアプレットを作成せよ。
               提出期限 ~2003年10月27日
               学籍番号 035735k
               学部学科 工学部情報工学科
               氏名   仲松 義嗣 kunn

参考プログラムのソースと考察
*** ソース ***

01:import java.applet.Applet; 02:import java.awt.Graphics; 03:import java.awt.TextField; 04:import java.awt.Button; 05:import java.awt.Color; 06: 07:public class LifeCycleApplet extends Applet { 08: private TextField text; 09: private Button button; 10: private Color color; 11: private int x,y,width,height,red,green,blue; 12: 13: public void init(){ 14: //テキストフィールドとボタンを追加 15: text = new TextField("Hello, TextField", 30); 16: button = new Button("Hello, Button"); 17: add(text); 18: add(button); 19: 20: //パラメータの読み込み 21: x = Integer.parseInt(getParameter("abscissa")); 22: y = Integer.parseInt(getParameter("ordinate")); 23: width = Integer.parseInt(getParameter("woval")); 24: height = Integer.parseInt(getParameter("hoval")); 25: 26: red = Integer.parseInt(getParameter("red")); 27: green = Integer.parseInt(getParameter("green")); 28: blue = Integer.parseInt(getParameter("blue")); 29: 30: color = new Color(red,green,blue); 31: } 32: //public void start() { 33: //} 34: 35: //public void stop() { 36: //} 37: 38: //public void destroy() { 39: //} 40: 41: public void paint(Graphics g) { 42: //アプレットの描画処理 43: g.setColor(color); 44: g.drawString("Hello,Applet",120,80); 45: 46: g.setColor(color); 47: g.fillOval(x,y,width,height); 48: } 49:}



*** 考察 ***

キーワード

import  Javaでプログラムを作るには既存のクラスをインターフェイスを利用し、 ユーザー独自のクラスを作成します。この既存のクラスをインターフェイスを 便利に使用できるよにしたのが import です。 例えば、java.awtパッケージの Graphicsクラスを使用したい時、 import java.awt.Graphics; とすれば、Graphicsクラスのフィールドやメソッドにアクセスしたい時にいちいち java.awt.Graphics.クラス名 java.awt.Graphics.フィールド名 とする必要がなくなります。 public private クラスに対する修飾子  [書式] 修飾子 class クラス名 public :このクラスのパッケージ外からもこのクラスを参照できる abstract :実装されていないメソッドを含むクラスであることを示す final :このクラスをスーパークラスとしてサブクラスを作れないことを示す 変数に対する修飾子  [書式] 修飾子 型 変数名; public :どこからでもこの変数を参照できる protected :変数を定義しているクラスとサブクラスから参照できる private :変数を定義しているクラスからのみ参照できる static :そのクラスにおいて1つだけ定義され、そのクラスのインスタ ンスすべてで共通になる final :宣言時に指定した初期値を保持し、その値を変更することができない transient :この変数はオブジェクト内部で一時的なものとなる メソッドに対する修飾子 [書式] 修飾子 型 メソッド名 public :外部からこのメソッドを使用できる protected :このクラスとサブクラスからこのメソッドを使用できる private :このクラスからのみこのメソッドを使用できる abstract :抽象メソッドで中身は定義されていない final :このメソッドはオーバーライド(ロード)できない native :このメソッドはJava言語以外の言語で実装される extends  Javaでは Objectがルートとなるツリー構造をしたクラス階層を提供してい ます。これらのクラスに新しい機能を追加したい時に extendsを使います。 つまり、スーパークラスのフィールドやメソッドを継承し、サブクラスで 拡張できる仕組みです。 extends Applet とすると、少なくとも public void init(),public void start(),public void stop() の3つのメソッドが自動的に使用されています。 new  配列やオブジェクトのインスタンスを生成したり、 コンストラクタの初期化をしたりします。 void  メソッドの戻り値として voidを指定すると、デフォルト値が返されます。

クラス

java.applet.Applet メソッド public void init() アプレットが作成されるときにシステムにより自動的に呼ばれ、アプレットを 初期化する public void start() アプレットのドキュメントが読み込まれたときにシステムにより自動的に呼ば れる public void stop() アプレットのドキュメントが画面上に表示されなくなったときに、システムに より自動的に呼ばれる public void destroy() java.awt.TextField コンストラクタ public TextField(String text, int columns) cokumnsで示す幅でtextを初期値とするテキストフィールドを生成する java.awt.Button コンストラクタ public Button(String label) ボタンを生成し、labelで示すラベルをボタンに表示します ボタンのサイズはlabelの長さに合わせて調整される java.awt.Graphics メソッド public void drawString(String str, int x, int y) (x,y)位置に文字列を描画します |------>x | | v y (文字列) public void fillOval(int x, int y, int width, int height) 始点(x,y),幅width,高さheightの四角形に内接する楕円を描き、楕円の内部を フォアグランドカラーで塗りつぶします java.awt.Color コンストラクタ public Color(int r, int g, int b) r(赤),g(緑),b(青)の各成分を0〜255の範囲で与えRBG色を作ります 255が最も強くその色の成分を出します

パラメータ

param name=" " value=" " appletタグ内にparamタグを入れname属性とvalue属性を指定します。 name属性にはプログラムで使われているパラメータ変数を入れ、 value属性にその具体的な数値を入れます。



*** 感想 ***
 今回のレポートはいろいろあって不本意なものになってしまいました。 まず、コンピュータに与える命令をクラスごとに管理したサンプルプログラム をレポートに使おうと試行錯誤しましたが期限内にできそうもなかったので断 念。さらに、おもしろそうなサンプルプログラムを見つけてしまって、考察 しようと思いましたが、同様に断念。結局、上のプログラムになってしまいま した。でも、考察はしていませんが、その過程でいろいろ学べたとおもいます。

top