توضیحات
سطح دسترسی پیشفرض تمام اعضا در کاتلین public است.
با استفاده از کلیدواژه های سطح دسترسی (access modifiers) در کاتلین میتونیم مشخص کنیم متغیرها، توابع، کلاس ها و اینترفیس ها کجای پروژه قابل دسترسی باشن.
در کاتلین چهارتا کلیدواژه ی سطح دسترسی داریم:
- public
- protected
- internal
- private
سطح دسترسی اعضای تاپ لول (top level)
با کلیدواژه های سطح دسترسی میتونیم دسترسی به اعضای top level رو در پروژه تعیین کنیم؛ کلیدواژه ی protected برای اعضای تاپ لول قابل استفاده نیست.
تعریف اعضای تاپ لول با کلیدواژه private
با کلیدواژه ی private اعلام میکنیم عضو top level فقط برای اعضای داخل فایل در دسترس است.
private var v = ...
private fun myFunction(){
...
}
private class MyClass{
...
}
تعریف اعضای تاپ لول با کلیدواژه internal
با کلیدواژه ی internal میگیم عضو top level فقط برای اعضای داخل ماژول (module) در دسترس است.
internal var v = ...
internal fun myFunction(){
...
}
internal class MyClass{
...
}
تعریف اعضای تاپ لول با کلیدواژه public
با استفاده از کلیدواژه ی public اعلام میکنیم تمام کلاس ها و فایل های پروژه میتونن به عضو top level دسترسی داشته باشن.
public var v = ...
public fun myFunction(){
...
}
public class MyClass{
...
}
سطح دسترسی اعضای کلاس
با کلیدواژه های سطح دسترسی میتونیم دسترسی به اعضای کلاس رو در پروژه تعیین کنیم.
تعریف اعضای کلاس با کلیدواژه private
با استفاده از کلیدواژه ی private برای یک عضو کلاس اعلام میکنیم فقط اعضای داخل کلاس میتونن بهش دسترسی داشته باشن.
class MyClass{
private var prop = ...
...
private fun myFunction(){
...
}
...
}
تعریف اعضای کلاس با کلیدواژه protected
اگه از کلاسی که عضوش با سطح دسترسی protected تعریف شده ارث بری نداشته باشیم مثل private عمل میکنه. در صورت ارث بری، اعضای کلاس فرزند به عضوی که در کلاس پدر با protected تعریف شده دسترسی دارند.
class MyClass{
protected var prop = ...
...
protected fun myFunction(){
...
}
...
}
تعریف اعضای کلاس با کلیدواژه internal
تمام اعضای module که به کلاس دسترسی دارن؛ به عضو کلاس که با سطح دسترسی internal تعریف شده نیز دسترسی دارن.
class MyClass{
internal var prop = ...
...
internal fun myFunction(){
...
}
...
}
تعریف اعضای کلاس با کلیدواژه public
اعضای تمام کلاس ها و فایل های پروژه میتونن به عضوی که در کلاس با public تعریف شده، دسترسی داشته باشند.
class MyClass{
public var prop = ...
...
public fun myFunction(){
...
}
...
}
خلاصه
- کلیدواژه های سطح دسترسی تعیبن میکنن یک تابع متغیر، کلاس و ... در کجا قابل دسترسی هستند.
- در کاتلین چهارتا کلیدواژه ی سطح دسترسی داریم که عبارتند از private، protected، internal و public.
- کلیدواژه های سطح دسترسی برای اعضای داخلی (local) قابل استفاده نیستند.
- کلیدواژه ی protected برای اعضای top level قابل استفاده نیست.
بازخورد و دیدگاه ها
اولین نفری باشید که در این صفحه نظر میدهید