パラメータは宣言された変数名と同じです.

1375 ワード

まずコードを見て


public class CH05_01 {

	public static void main(String[] args){

			System.out.println(" stundent ");

			Student  s1=new Student();

			Student	 s2=new Student();

			Student s3;

			s3=new Student();

			s1.show();

			s2.setdata(" ", "A");

			s2.show();

			s3.name=" ";

			s3.score="C";

			s3.show();

			Student.name=" ";

			Student.score="A";

			Student.show();

	}

}

class Student{

		public Student(){

			name=" ";

			score="B";

		}

		public static String name;

		public static String score;

		public static void show(){

			System.out.println(" :"+name);

			System.out.println(" :"+score);

		}

		public static void setdata(String name1,String score1){

			name=name1;

			score=score1;

		}

}


結果を表示:
stundentクラスのメンバー変数またはメソッド名を使用していません:康小月成績:B名前:康小愛成績:A名前:康暁偉成績:C名前:許雨柔成績:A
 
メソッドのパラメータの名前を宣言した変数の名前と同じに変更すると
すなわち
		public static void setdata(String name,String score){

			name=name;

			score=score;

		}


結果が表示されます.
stundentクラスのメンバー変数またはメソッド名を使用していません:康小月成績:B名前:康小月成績:B名前:康暁偉成績:C名前:許雨柔成績:A
結論:
クラスにメソッドを書く場合、パラメータリストの名前と宣言された変数の名前が同じである場合、クラスが生成したオブジェクトがこのメソッドを呼び出し、新しいパラメータを入力します.この場合、メソッドはクラスで宣言された同名の変数を優先的に読み取り、オブジェクト呼び出しメソッドはどのパラメータを入力してもクラスの変数を表示します.