محدوده ی ایجاد متغیر ها و توابع

محدوده ی تعریف متغیر و توابع در کاتلین

محدوده ی ایجاد متغیر ها و توابع

در کاتلین چهار محل برای ایجاد متغیر ها و توابع وجود داره به این محل ها محدوده ی ایجاد متغیر ها و توابع گفته میشه (scope of variables).

توجه:

در این مطلب فقط ایجاد یک متغیر رو نشون میدیم و از تابع صرف تظر میکنیم همینطور صدا زدن متغیر رو نادیده گرفتیم، فقط میخوایم بدونیم یک متغیر یا تابع در کجا میتونه ایجاد بشه.

محدوده ی تاپ لول (top level)

وقتی یک متغیر یا تابع رو داخل فایل کاتالین تعریف کنیم بهش متغیر یا تابع تاپ لول (top level) میگیم. کل توابع و کلاس های داخل فایل میتونن به این متغیر دسترسی مستقیم داشته باشن.

var topLevel = "This is a top level variable" fun main(){ println(topLevel) }

محدوده ی داخل کلاس (member class)

متغیر یا توابعی که داخل کلاس تعریف میشن بهشون member میگیم.

اعضای کلاس بجز اعضای companion object به متغیر یا تابع دسترسی مستقیم دارن.

class MyClass{ ... val memberVariable = "This is a member variable" ... }

محدوده ی companion object

متغیر یا توابعی که داخل companion object تعریف میشن.

اعضای companion object و اعضای کلاس به متغیر یا تابع تعریف شده دسترسی مستقیم دارن.

class MyClass{ ... companion object{ ... var companionVariable = "This is a companion variable" ... } }

محدوده ی داخل تابع (local)

متغیر یا توابعی که داخل تابع تعریف میشن بهشون اعضای لوکال (local) میگیم.

فقط اعضای داخل تابع به متغیر یا تابع تعریف شده دسترسی مستقیم دارن.

fun myFunction(){ ... var localVariable = "This is a local variable" ... }

خب اینم از مکان های تعریف متغیر و توابع. موضوعی به نام سطوح دسترسی یک متغیر یا تابع وجود داره که در این بخش گفته نشد؛ انشالله بعدا بهش می پردازیم.

موفق باشید.

arrow_drop_up
کپی شد!