↓↓クリックして頂けると励みになります。
【13 | メソッド】 << 【ホーム】 >> 【15 | サイコロゲーム】
Javaで他のクラスのメソッドを利用するには、いくつかの方法があります。
以下にいくつかの一般的な方法を示します。
- インスタンス化して利用する: 別のクラスのメソッドを利用するには、そのクラスのオブジェクトをインスタンス化して、そのオブジェクトのメソッドを呼び出します。
- 静的メソッドを利用する: 別のクラスの静的メソッドを利用する場合は、そのクラス名を使用してメソッドを呼び出します。
- 継承して利用する: 別のクラスを継承している場合、そのクラスのメソッドをサブクラスで利用できます。
まずはインスタンス化してメソッドを利用する方法を学びます。
Visual Studio Codeで以下のJavaプログラム「Sort7.java」を作成して下さい。
新規作成 【Sort7.java】
import java.util.*; public class Sort7 { public static void main( String[] args ) { int num = 10000; int max = 10000000; char[] flags = { 's', 'b', 'q', 'm', 'j' }; for( int i=0; i<flags.length; i++ ) { int[] array = makeRandomInteger ( num,max ); Calendar cal = Calendar.getInstance(); System.err.print( flags[i] + ":" ); System.err.print( "Start:" + cal.get( Calendar.MINUTE ) + ":" + cal.get( Calendar.SECOND ) + ":" + cal.get ( Calendar.MILLISECOND ) ); sort( array,flags[i] ); cal = Calendar.getInstance(); System.err.println( " Finish:" + cal.get( Calendar.MINUTE ) + ":" + cal.get( Calendar.SECOND ) + ":" + cal.get( Calendar.MILLISECOND )); } } public static void sort( int[] array, char c ){ switch( c ) { case 's': Sort3.sort( array ); break; case 'b': Sort4.sort( array ); break; case 'q': Sort5.sort( array ); break; case 'm': Sort6.sort( array ); break; case 'j': java.util.Arrays.sort( array ); break; default : } } public static int[] makeRandomInteger( int num, int max ){ int[] array = new int[num]; for( int i=0; i<num; i++ ) { array[i] = (int)( max * Math.random() ); } return array; } }
このプログラムでは、最初に「import java.util.*;
」と書いて、javaのパッケージの使用を宣言しています。
「case 'j': java.util.Arrays.sort( array );
」の行でjavaにもともと入っている並び替えのプログラム(sortメソッド)を使用しています。
実行したときの分、秒、ミリ秒を取得するのにCalendar.getInstance();
というjavaのパッケージを使用しています。
「分、秒、ミリ秒」をJavaのパッケージから取得することができます。
この「分、秒、ミリ秒」をSystem.err.print
で出力していることです。
これを標準エラー出力といいます。
これに対して今までのSystem.out.print
を標準出力といいます。
標準出力はプログラムで実行された結果を出力していました。
標準エラー出力はそれと違い、エラーメッセージとして表示しています。
これはあくまでもメッセージなので、結果の出力とは異なります。
プログラムの実行中にメッセージを表示します。
もっと大規模なプログラムになるとこのエラー出力が重要になります。
エラーが起きそうな場所にエラー出力が表示されるようにしておいて、エラーが起こったときに素早く対応できるようにします。
もう一つ覚えておいてほしいことは、他のクラスのメソッドの呼び出し方法です。
他のクラスのメソッドを呼び出すには次のように記述します。
クラス名.メソッド名(引数);
この際、呼び出されるクラスはコンパイルされている必要があります。
最後にmakeRandomIntegerメソッド
について説明します。
このメソッドでは、numの数だけ配列がランダムに作られます。
max未満の整数が配列に入ります。
配列に代入するときに、(int)
でint型にキャストされています。
Javaプログラムをコンパイルして実行結果を確認します。
~/Desktop/Programming/JP $ javac Sort7.java ~/Desktop/Programming/JP $ java Sort7 s:Start:39:50:591 Finish:39:50:651 b:Start:39:50:652 Finish:39:50:753 q:Start:39:50:754 Finish:39:50:758 m:Start:39:50:759 Finish:39:50:763 j:Start:39:50:764 Finish:39:50:768
【13 | メソッド】 << 【ホーム】 >> 【15 | サイコロゲーム】
↓↓クリックして頂けると励みになります。