Report#1

例題Helloを以下のように書き換えて、出力せよ。


プログラムの例 (Hello.java)

public class Hello {
public static void main(String[] argv){
System.out.println("Hello, Java World!");
}
}

a.出力するメッセージを変更せよ。
b.同じメッセージを3回、別々の行に出力せよ。
c.「Hello,」と「Java World!」を別々の行に出力せよ。
d.System.out.println(…)とSystem.out.print(…)の違いについて延べよ。
e.同じメッセージを3回、同一行に出力せよ。
f.次のような菱形模様(「*」を用いる)を出力せよ。
*
***
*****
***
*
g.「*」を用いて、自分の好きな形を出力せよ。

・ 全体の考察



a.
 出力するメッセージを変更せよ。

・プログラム

public class reporta {             /* public class クラス名*/
public static void main(String[] argv){ /* メインメソッド */
System.out.println("045721D Ooki Kinjo"); /* 画面に出力 */
}
}


・実行結果

045721D Ooki Kinjo


・考察

 例題プログラムのprintln(quot;quot;);内を変えただけのものです。
 詳しい説明は最後にします。


b.
 同じメッセージを3回、別々の行に出力せよ。

・プログラム

public class reportb {
public static void main(String[] argv){
System.out.println("Hello, Java World!");
System.out.println("Hello, Java World!");
System.out.println("Hello, Java World!");
}
}


・実行結果

Hello, Java World!
Hello, Java World!
Hello, Java World!


・考察

 System.out.println("Hello, Java World!");を3回書い ただけです。
 C言語の様にもっと短くできるのでしょうが、最初なので、とりあえず簡潔に しました 。



c.
 「Hello,」と「Java World!」を別々の行に出力せよ。

・プログラム

public class reportc {
public static void main(String[] argv){
System.out.println("Hello,");
System.out.println("Java World!");
}
}


・実行結果

Hello,
Java World!


・考察

 これも上同様に、System.out.println("")を2つ書いて出 力する文字を別々にしただけです。




d. System.out.println(…)とSystem.out.print(…)の違いについて延べよ。

・プログラム

public class reportd {
public static void main(String[] argv){
System.out.print("Hello, Java World!");
}
}


・実行結果

Hello, Java World![nw0421:~/java/prog1/report1] j04021%


・考察

 実行結果を見る限りでは、出力結果の後に改行がされていない事がわかる。
 例題プログラムより、printlnはちゃんと改行されている。
よって、
 printlnは実行の後に改行されるが、
 print はされない、
 という事だと思われる。




e. 同じメッセージを3回、同一行に出力せよ。

・プログラム

public class reporte {
public static void main(String[] argv){
System.out.print("Hello, Java World! ");
System.out.print("Hello, Java World! ");
System.out.println("Hello, Java World! ");
}
}


・実行結果

Hello, Java World! Hello, Java World! Hello, Java World!


・考察

問題dの結果より、printを使用しました。
 これにより、別々に書いたものでも、同じ行に出力できた。




f. 次のような菱形模様(「*」を用いる)を出力せよ。

*
***
*****
***
*


・プログラム

public class reportf {
public static void main(String[] argv){
System.out.println(" * ");
System.out.println(" *** ");
System.out.println("*****");
System.out.println(" *** ");
System.out.println(" * ");
}
}


・実行結果

*
***
*****
***
*


・考察

改行ありの出力で、5行5列の空白を作り、で埋め尽くし、そこに上手く菱形になるように" * "を置いた.





g. 「*」を用いて、自分の好きな形を出力せよ。

・プログラム

public class reportg {
public static void main(String[] argv){
System.out.println(" *** ");
System.out.println(" * ");
System.out.println(" * ");
System.out.println(" * ");
System.out.println(" * * ");
System.out.println(" **** ");
}
}


・実行結果


***
*
*
*
* *
****


・考察

問題eと同様にして作った。 わかりにくいですが、Java の J です。





・ーー・ 全体の考察 ・ーーーー・


javaプログラムには、少なくとも1つのクラス指定が含まれる。そしてすべて の処理は1つ、または複数のクラス内で行われる。

 今回やったjavaアプリケーションでは、プログラムを実行する際は、main()メ ソッドから開始される。
 main()メソッドはargvという1つの引数をうけとる。



・javaプログラムを作って、実行するまでの流れ。

  
 まず、プログラムは、 

class クラス名{
メンバ変数またはメソッドの宣言
}

 の形が基本である。 このとき、ファイル名は、

   クラス名.java 

 とします。(クラス名とメソッドの頭文字は大英字が慣例のようです。)

 
 次に、できたファイルをコンパイルします。この時、 

 javac クラス名.java

を入力する。するとクラス名に .class がついたファイルができる。


 これを実行するには、

 java クラス名
 
 を入力する。(終)



・例題プログラムの解説
 
public class Hello {
public static void main(String[] argv){
System.out.println("Hello, Java World!");
}
}

 ・1行目

 ここではHelloという名前の新しいクラスを宣言しています。


 ・2行目

 ここの部分をmain(メイン)メソッドといい、次のような意味が あります.

public

メソッドの利用を誰にでも許可する.

static

メソッドがコンパイルの直後から存在する.

void

メソッドが値を返さない.

String argv[]

コマンドラインで入力した引数が入る文字列の配列.


 ・3行目

 ここでメッセージを出力します。
 println("")メソッドは引数として渡された ("")内の文字を出力し、その後改行する。
 printlnのlnはline(行)の意




・ー・ 感想 ・ーー・

 今回は、最初という事もあって、簡単にできました。

 しかし、これをHTMLによってweb上に載せる事にかなりとまどいました。
 HTMLは、ホントに理解できてなかったので、単純で見にくいものになってしま いました。

 今度はもう少し凝ってみたいと思います。




ーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーー

 @ 参考文献 @

・独習Java 第2版
         ジョセフ・オニール 著


・とほほのWWW入門