ラボ講座‎ > ‎Java講座‎ > ‎

main()の中でクラスやメソッドを呼び出す際の注意事項

C言語と同様、Javaアプリケーションを作成する場合,main()でプログラムは始まり ます。しかしながら、C言語との違いで最初戸惑うことがあります。例えば次のようなプログラムはエラーになります.


public class Application1 {
 int i;

 public void test(int i) {
  System.out.println(i);
  }

 public stacic void main(String[] args) {
  i =10;
  test(i);

 }

}

static である main()からは,staticでない関数や変数を呼ぶことはできません.
つまり,もし,i とか test 等を定義して利用するならば,それらは static でなければならないのです.

これは,困りますねぇ....こういう場合は,下記のようにしたらいいんです.


public class Application1 {
 int i;

//mainを代役する関数を定義し,その中で関数を呼ぶ
public void submain(){
       i =10;
      test(i);
  }


 //使いたい関数
 public void test(int i) {
    System.out.println(i);
  }

//自身をnewしてsubmain関数を呼ぶ
 public stacic void main(String[] args) {

        new Application1().submain();  

 }


Comments