خلاصه مطلب
کلمه کلیدی this شاید خیلیا با مفهومش مشکل داشته باشند این آموزش رو ببینید نظرتون عوض میشه!!!!
فهرست جلسات دوره مقدماتی جاوا
مقدمه اول | جاوا چیست؟
مقدمه دوم | تاریخچه جاوا
مقدمه سوم | ویژگیهای زبان جاوا
جلسه اول | راهنمای دانلود و نصب JDK
جلسه دوم | اجرای یک برنامه جاوا در Notepad
جلسه سوم | راهنمای دانلود و نصب Eclipse
جلسه چهارم | ساخت اولین برنامه جاوا در Eclipse
جلسه پنجم | متغیر ها در جاوا
جلسه ششم | تغییر فونت محیط Eclipse
جلسه هفتم | عملگرهای پایه ای جاوا
جلسه هشتم | دستورات شرطی
جلسه نهم | اشیا و کلاس ها
جلسه دهم | ورودی گرفتن
جلسه یازدهم | حلقههای کنترلی
جلسه دوازدهم | کلمه کلیدی static
جلسه سیزدهم | کلاس Math
جلسه چهاردهم | کلاس String
جلسه پانزدهم | آرایههای یک بعدی
جلسه شانزدهم | کنترل سطح دسرسی (Modifiers)
جلسه هفدهم | متدها در جاوا
جلسه هجدهم | کلمه کلیدی this
جلسه نوزدهم | کلاسهای داخلی
جلسه بیستم | ارث بری در جاوا
جلسه بیست و یکم | کلمه کلیدی final
جلسه بیست و دوم | Overriding در جاوا
جلسه بیست و سوم | Polymorphism( چند ریختی)
جلسه بیست و چهارم | چندریختی را بهتر یادبگیرید
جلسه بیست و پنجم | Abstraction( انتزاع)
جلسه بیست و ششم | Encapsulation(کپسوله سازی)
جلسه بیست و هفتم | اینترفیس (Interface)
جلسه بیست و هشتم | کلاس Random
جلسه بیست و نهم | Exceptions (استثناها)
جلسه سی ام | کار با فایل در جاوا(Files and I/O)
جلسه سی و یکم | کلاس InputStreamReader
جلسه سی و دوم | کلاس OutputStreamWriter
جلسه سی و سوم | کلاس BufferedReader
جلسه سی و چهارم | کلاس BufferedWriter
جلسه سی و پنجم | Serialization در جاوا
جلسه سی و ششم | چندنخی(Multithreading)
جلسه سی و هفتم | آرایه دو بعدی در جاوا
جلسه سی و هشتم | کلاس ArrayList در جاوا
جلسه سی و نهم | Non Access Modifier در جاوا

لیست دوره های آکادمی جاوا پرو
💡 برای استفاده از متغیرهای نمونه،متدها یا سازنده های کلاسی که در ان قرار داریم از کلمه کلیدی this استفاده میکنیم.
💡 با استفاده از کلمه کلیدی this می توانیم به اعضای کلاسمون از قبیل سازنده ها،متدها و متغیر ها اشاره کنیم.

💡 نکته : کلمه کلیدی this تنها و فقط! برای صدازدن متغیرهای نمونه،متدها و سازنده های کلاسمون استفاده می شود.
یادآوری :
💠 متغیرهای نمونه همان متغیرهایی هستند که در بدنه کلاس تعریف می شوند.
💠 پارامترها در متد و سازنده ها همان متغیرهای محلی هستند که تنها بدنه متدها و سازنده ها قابل دسرس می باشند. متدوال ترین استفاده از کلمه کلیدی this: (خیلی مهم):متدوال ترین کاربرد کلمه کلیدی this در جاوا برای فرق گذاشتن بین متغیرهای نمونه و متغیر های محلی هم نام درون متد و سازنده های یک کلاس می باشد. یعنی هر وقت در یک متد یا سازنده متغیر محلی داشتیم که هم نام با نام متغیر نمونه کلاس بود و خواستیم از هر دو متغیر در یک متد یا سازنده خود استفاده کنیم، برای مشخص نمودن متغیر نمونه از متغیر محلی همنام ،متغیر نمونه را با کلمه کلیدی this صدا میزنیم،با این کار به برنامه اعلام میکنیم که منظور ما متغیر نمونه کلاس می باشد.
مثال:
| package javalike ; class Student { int age; Student(int age) { this.age = age; } } |
✔ یک کلاس به نام Student که دارای یک متغیر نمونه به نام age و یک سازنده پارامتردار می باشد،داریم.در این مثال کلاس ما یک سازنده براش تعریف کردیم که پارامتر آن یک عدد از نوع صحیح که همنام متغیر نمونه کلاس می باشد داریم، در بدنه سازنده قصد داریم مقدار متغیری که از پارامتر ورودی سازنده دریافت کرده ایم درون متغیر نمونه کلاس بریزیم! چون هم متغیر محلی سازنده و هم متغیر نمونه کلاس همنام هست برای تفکیک متغیر نمونه و متغیر محلی همنام از یکدیگر ،متغیر نمونه کلاس را با کلمه کلیدی this صدا میزنیم.
.png)
✔ با این روش جاوا میدونه که متغیر آبی رنگ متغیر نمونه و متغیر قهوه ای رنگ متغیر محلی می باشد حتی اگر همنام باشند!
در دوره پیشرفته برنامه نویسی جاوا به صورت ویدئویی به موضوع کلمه کلیدی this در جاواپرداخته ایم.
مثال:
| package javalike;class Student { String name; int age; String id; double num; public Student(String name, int age, String id) { this.name = name; this.age = age; this.id = id; } public void setNum(double num) { this.num = num; } public void print() { System.out.println("Name is " + name); System.out.println("Age is " + age); System.out.println("id is " + id); System.out.println("Num is " + num); } public static void main(String[] args) { Student st = new Student("Ali", 22, "921122546"); st.setNum(18.01); st.print(); } } |
خروجی:
| Name is Ali Age is 22 id is 921122546 Num is 18.01String name; int age; String id; double num; |
توضیحات کد بالا:
✔ در این کلاس 4 متغیر نمونه در بدنه کلاس تعریف کرده ایم.
| public Student(String name, int age, String id) { this.name = name; this.age = age; this.id = id; } |
✔ در سازنده کلاس 3 پارامتر همنام با متغیر نمونه وجود دارد.
✔ در بدنه سازنده قصد داریم هر یک از پارامترهای سازنده را به یکی از متغیر های نمونه نسبت دهیم.
✔ چون پارامترهای سازنده با متغیرهای نمونه همنام هستند،متغیر های نمونه را در بدنه سازنده با کلمه کلیدی this صدا زده ایم.
| public void setNum(double num) { this.num = num; } |
✔ در متد setNum یک پارامتر از نوع اعشاری همنام با متغیر نمونه وجود دارد. کار این متد اینه که یک عدد اعشاری از ورودی میگیرد و میریزد داخل متغیر نمونه،از انجایی که متغیر محلی این متد و متغیر نمونه همنام هستند ،متغیر نمونه را با کلمه کلیدی this صدا میزنیم و مقدار متغیر محلی رو بهش نسبت می دهیم.
✔ در سازنده کلاس و متد setNum چون نام پارامترها(متغیرهای محلی) با نام متغیر نمونه همنام می باشد برای دسرسی به متغیرهای نمونه و تفکیک متغیر نمونه از متغیر محلی،متغیر نمونه را با کلمه کلیدی this صدا زدیم.
| public void print() { System.out.println("Name is " + name); System.out.println("Age is " + age); System.out.println("id is " + id); System.out.println("Num is " + num); } |
✔ در متد print چون خبری از متغیر محلی همنام با متغیر نمونه کلاس نیست ،دیگر نیاز نیست که متغیرهای نمونه را با کلمه کلیدی this صدا بزنیم.
| public static void main(String[] args) { Student st = new Student("Ali", 22, "921122546"); st.setNum(18.01); st.print(); } |
✔ در متد main یک شی از کلاس Student ساخته و سازنده ان را مقدار دهی کرده ایم.
✔ با استفاده از شی ساخته شده از کلاس متدها setNum و print را صدا کرده ایم.
✔ چون متدsetNum یک پارامتر از نوع اعشار داشت هنگام صدا زدن آن را مقدار دهی میکنیم.
موفق و پیروز باشید 😊🌹🌸🌷🌷🌷🌺🌻🌼

این جلسه آموزشی را بصورت کامل و مرتب شده در لینک زیر دانلود کنید:(در صورت خرابی لینک گزارش دهید)لینک دانلود
.png)
.png)

