レポート#1


課題

講義資料のJavaアプレットを参考に、簡単なディスプレイ出力Javaアプレットを作成し、その動作を考察せよ。


目次

    
  1. 簡単なアプレットの例
  2. 簡単なアプレットの例2
  3. 自分で作ったアプレット
  4. 考察
  5. 感想

1.簡単なアプレットの例(文字の出力)

ソースコード

1import java.applet.Applet;短名 Applet
2import java.awt.Graphics;短名 Graphics
3public class Helloa extends Applet {サブクラス Helloa
4public void paint(Graphics g) {paint()メソッド
5g.drawString("Hello, Java world!", 30, 40);文字列描画メソッド
6}
7}

実行結果


2.簡単なアプレットの例(円の出力)

ソースコード

1import java.awt.*;ウィンドウ関連ツール(Abstract Window Toolkit)を使う
2import java.util.Random;乱数を使う
3import java.applet.Applet;
4public class Circles extends Applet {アプレットの名前は Circles にする
5public void paint(Graphics g) {描画手順は以下の通り
6Random a = new Random();新しい乱数列 a を用意する
7for (int i = 0; i < 1000; i++) {0 から 999 までループ
8g.setColor(new Color(a.nextInt()));整数の乱数を発生し,それで色を決める
9int x = (int)(300 * a.nextDouble());整数変数 x に 300×(0以上1未満の実数の乱数) を(切り捨てて整数にして)代入する
10int y = (int)(100 * a.nextDouble())上と同様
11int r = (int)(40 * a.nextDouble()) + 10;上と同様
12g.fillOval(x - r, y - r, 2 * r, 2 * r);中心 (x,y),半径 r の円板を描く
13}
14}
15}

実行結果


3.オリジナルアプレット

ソースコード

1import java.awt.*;ウィンドウ関連ツール(Abstract Window Toolkit)を使う
2import java.util.Random;乱数を使う
3import java.applet.Applet;
4public class sikaku extends Applet {アプレットの名前は sikaku にする
5public void paint(Graphics g) {描画手順は以下の通り
6Random a = new Random();新しい乱数列 a を用意する
7for (int i = 0; i < 100; i++) {0 から 99 までループ
8g.setColor(new Color(a.nextInt()));整数の乱数を発生し,それで色を決める
9int x = (int)(300 * a.nextDouble());整数変数 x に 300×(0以上1未満の実数の乱数) を(切り捨てて整数にして)代入する
10int y = (int)(200 * a.nextDouble());上と同様
11int w = (int)(100 * a.nextDouble());上と同様
12int h = (int)(100 * a.nextDouble());上と同様
13if(i%2==0)if文でiが2で割れる時(偶数)
14g.drawRect( x , y , w , h);塗りつぶされていない四角形の表示
15elseiが2で割り切れない時(奇数)
16g.fillRect( x , y , w , h);塗りつぶされた四角形の表示
17}
18}
19}

実行結果


4.考察

1行目、java.awt.Graphicsクラスをインポートしています。Graphicsクラスは
AWTによって提供されているもので文字列や線、図形などを描くことができます。
2行目、乱数を使うことを定義しています。
3行目、AppletのクラスでAppletクラスはすべてのアプレットのスーパークラスです。
アプレットは.classという拡張子で表されていて4行目はそのアプレットの名前を
sikakuという名前にするということを表示している。
5行目、このメソッドはサブサブクラスの Applet 要素が継承したものを、さらに継承させる。
6行目、乱数列aを用意する。これはランダムに数字を選択する。
7行目、iを0からはじめて99まで一つずつ足していく
8行目、乱数aを使って色を決まっているsetColorのあとでredなど名前などを入力しても
その色のものができる。
9行目、xの宣言をしていて0~300までの数字がランダムで入力
10行目、yの宣言をしていて0~200までの数字をランダムで入力
11行目、wの宣言をしていて0~100までの数字をランダムで入力
12行目、hの宣言をしていて0~100までの数字をランダムで入力
9~12行の間は変数の宣言でxは横、yは縦で図形が表される場所を示されていて
wは四角形の横の辺のながさ、hは四角形の縦の辺のながさをそれぞれ示している
iが変わる度にx,y,w,hの値も変化する
14~16行目、if文,elseを使いiに条件を与えた
iが偶数の時は枠だけの四角形がでてくる、iが奇数の時は塗りつぶされた四角形がでてくる
このときの図形がでる場所や大きさもランダムになっている
他にもこのiは図形の数を表していると思われる。授業では1000になっていたが自分では数字を少なく
するだけで実行結果に空白がみられるようになった
他にもアプレットでは多角形の図形を表示することができたり線だけの表示
文字自体の大きさや筆記体などをいろいろ変えることが出来ます
あとif文などが使えたのでもうすこしいろいろ使えるものがあると思います

5.感想

今回からC言語がJavaになったということもあってはじめはとまどうばっかりだったし
htmlという新しい範囲での勉強も必要だったので思った以上に大変でした。
アップレットをwebページで探してみるともっとすごい動きをするものや
ゲームができたりするアプレットがあったのでもっといろいろとサイトをみて
勉強しようと思いました。それに授業でもっと勉強するとそれだけ中身が濃いものが
できると思います。これからもがんばろうと思います。