+1 امتیاز
قبل در برنامه نویسی توسط (467 امتیاز)
ویرایش شده قبل توسط

سلام. ابتدا به کد زیر توجه کنید:


public class Test {
	private int number;

	public Test(int number) {
		super();
		this.number = number;
	}

}

سوال من این است که چرا دو تا متغیر هم نام تعریف می‌کنند و بعد میان با this فرق بین این دو تا رو مشخص می‌کنن. آیا برای استفاده کمتر، از حافظه است یا مسئله‌ی دیگری دارد. ممنون.

1 پاسخ

+1 امتیاز
قبل توسط (1.1هزار امتیاز)
انتخاب شده قبل توسط
 
بهترین پاسخ

سوالتون کاملا جالبه. این کار اختیاری است و برای خواناتر شدن کد این کار انجام می شود، در مثال شما می توانیم نام یکی از متغیر های number را چیز دیگری تعریف کنیم ولی آنگاه با یک نگاه متوجه نمی شدیم که پارامتر number در constructor کلاس Test قرار است مقدار فیلد number کلاس Test را پر کند.

سوالات مشابه

0 امتیاز
1 پاسخ 479 بازدید
0 امتیاز
2 پاسخ 834 بازدید
+2 امتیاز
2 پاسخ 2.5هزار بازدید
سوال شده 8 سال قبل در برنامه نویسی توسط ssss (467 امتیاز)
+1 امتیاز
1 پاسخ 977 بازدید
+1 امتیاز
1 پاسخ 479 بازدید
+1 امتیاز
1 پاسخ 339 بازدید
+2 امتیاز
2 پاسخ 2.2هزار بازدید
...