処理の変数みたいなもんっぽいな。
1+1=2 というプログラムがあったら、その数字以外がメソッドみたいなもんらしい。 つまり1なり3なりいれてやれば、計算するぜ!ということだな。
メソッドは、変数みたくまず定義してやって、しかるべき時に読み出すかんぎらしい。
public class MethodExample { static void simpleMethod() { System.out.println("simpleMethodが読み出された!"); }
public static void main(String args[]) { System.out.println("mainのはじまりだぜ"); simpleMethod(); System.out.println("mainは終わった"); } }
こんなかんぎで読み出しと定義する。あとstaticは特別なクラスメソッドというのを 読み出すのにつかうそうだ。
正直よくわからん。
public class MethodExample2 {
static void todayIs( String arg1 ) { System.out.println("お前は" + arg1); }
public static void main(String args[]) { todayIs("有罪だ!"); todayIs("無罪だべ"); }
}
つまり、最初にStringのarg1、つまりtodayIsをつくっておいて、 Stringのarg+printlnお前はを付けるぞみたいなかんぎか。
つまりtodayIs読み出すたびになんか付けれるってかんぎなんかね。
いいたいことは分かるがさっぱりわからん。 public class MethodExample3 {
static int pow( int arg1) { int result = arg1 * arg1; return result; } public static void main(String args[]) { int answer; answer = pow(5); System.out.println( answer ); System.out.println( pow(6) ); System.out.println( pow( pow(2) ) );
} } だと、ようはpowが5だ!といったら、 二乗されてもどってくるってことだな。 mainなりで数値だす→呼び出されたメソッドの命令を行う というかんぎか。 ちなみに、return result;というのが戻り値の命令だそうです。そこでメソッド強制的に抜けて元にもどれるそうだ。
暴走!暴走! 同じクラス内に同じメソッド名の定義を何個ももてるそうだ。 でも同じだと迷うよな。
ということでJavaは、引数の数とデータの形で判断するらしい。
void method1 (int a){
と
void method1 (double a){
の場合、method1(100)だと上で、(5.3)とかだと下が自動的に呼ばれるらしい。便利ぃ!
void method1 (int a){
と
void method1 (int a, int b){
は、int同士だが、上は(111)で下は(111,11)とかなので別ということだ。 複数定義することをメソッドのオーバーロードというそうだ。 ちなみに、メソッド名やら引数やら引数のデータ型などの情報を、シグニチャというらしい。