第13講 クラスの学習
第5話 名前セット(代入)メソッドの意味
h.javaとa.javaを次のように変更してみましょう。
<<h.java>>
public class h{
  String name; //名前を入れる変数の雛形
  public void sn(String name){
    this.name=name;
  }
}
<<a.java>>
import java.io.*;
  class a{
    public static void main(String args[]){
      h taro = new h();
      taro.sn("太郎");
   }
}
を例に
  public void sn(String name){
    this.name=name;
  }
の意味を説明しましょう。
入門
この図を見ていただければ、
まったく意味不明だった
public class h{
  String name; //名前を入れる変数の雛形
  public void sn(String name){
    this.name=name;
  }
}
の意味が見えてきます。
    this.name=name;
同じnameでも、左辺と右辺では意味がちがいます。
this.nameのthis.はこのクラスのを意味します。
つまり、this.nameはこのクラスで定義されている変数nameです。
それに対して右辺のnameは引数名です。
name=name;と書いたのでは、どちらのnameであるかわからないので、区別するためにthis.を付けているのです。
this.の.はのという意味です。C++あたりでは->(矢印演算子)に相当します。

でもやはり、
public class h{
  String n; //名前を入れる変数の雛形
  public void sn(String a){
    n=a;
  }
}
と書いた方が圧倒的にわかりやすいですね。

では課題です。
肩書きをセット(代入)するメソッド、
身長をセット(代入)するメソッド、
体重をセット(代入)するメソッドを加え、
それに対応してファイルa.javaも書き換えましょう。

第4話へ 第6話へ

戻る

VB講義へ
VB講義基礎へ
vc++講義へ第1部へ
初心者のための世界で一番わかりやすいVisual C++入門基礎講座
初心者のための世界で一番わかりやすいVisual Basic入門基礎講座

初心者のための世界で一番わかりやすいVBA入門講義(基礎から応用まで)
初心者のための VC++による C言語 入門 C++ 入門 基礎から応用まで第1部
初心者のための VC++による C言語 入門 C++ 入門 基礎から応用まで第2部
初心者のための VC++による C言語 入門 C++ 入門 基礎から応用まで第3部