「Java/文法/クラス」の版間の差分

削除された内容 追加された内容
→‎メソッド: 引数の話題
92 行
 
== メソッド ==
=== 概要 ===
Javaのクラスでは、変数(へんすう)だけでなく関数(かんすう)も所有できる。なお関数(かんすう)とは、処理をまとめたモノの事である。
 
102 ⟶ 103行目:
というか、市販の入門書では「関数」という用語を用いていない入門書も多く、最初から「メソッド」という用語で説明している場合も多い。
 
=== 具体例 ===
 
 
;コード例
<syntaxhighlight lang="Java">
134 行
;余談
C++の構造体およびクラスも関数を所有できるので、C++には「メソッド」的な機能がある(C++では「メンバ関数」と呼んでいる)。なお、標準C言語にはメソッドが無く、そもそも標準Cの構造体は関数を所有できないし、また標準Cにクラスは無い。
 
=== 引数 ===
Javaにかぎらず、メソッドや関数を呼び出すときに、値を渡して、渡した値に応じた なんらかの処理をさせる事もできる。
また、そうやって受け渡しされる値やその入れ物の変数のことを、'''引数'''(ひきすう)という。
 
下記のコードは、単に足し算をする処理を、プログラマー自作のメソッドを使って再現している。
 
;コード例
<syntaxhighlight lang="Java">
class keisan {
public static void kansu(int a,int b) {
System.out.println( a + b );
}
};
 
class sample {
public static void main(String[] args) {
keisan.kansu(3, 5);
}
 
}
</syntaxhighlight>
 
;表示結果
8
 
 
Javaに限らず、一般にプログラミングでは、main関数など呼び出す側では、
keisan.kansu(3, 5);
のように、どのような値を渡すかを、具体値で指定しないければならない。
 
受け取る側のメソッドでは、
public static void kansu(int a,int b) {
の丸カッコ ( ) の中のコードのように、型(int の部分)と変数名(a や b の部分)を指定しなければならない。
 
当然、渡す側の数値の型と、渡される側の変数の型とは、一致しなければいけない。(もし一致させないとエラーになる場合もある。)
 
たとえば、もし受け取り側を int で定義しているのに、もし小数「1.41」を渡したら、コンパイル結果はエラーになる。
 
== 未分類 ==