Niyə enum konstruktoru özəldir?
Niyə enum konstruktoru özəldir?

Video: Niyə enum konstruktoru özəldir?

Video: Niyə enum konstruktoru özəldir?
Video: How To Achieve Synchronization In C# While Doing Async Await Multithreaded Programming - .NET Core 2024, Dekabr
Anonim

Siz əslində ictimai ola bilməzsiniz enum konstruktoru . Bu sizə lazımdır konstruktor olmaq özəl , çünki nömrələr sonlu dəyərlər dəstini təyin edin (məsələn, EN_US, EN_UK, FR_FR, FR_BE). Əgər konstruktor ictimai insanlar potensial olaraq daha çox dəyər yarada bilərdilər (məsələn, XX_KK və s. kimi etibarsız/elan edilməmiş dəyərlər).

Bununla əlaqədar olaraq, enumun konstruktoru ola bilərmi?

Bunun səbəbi nömrə Java sabit sabit dəyərləri ehtiva edir. Deməli, ictimai və ya müdafiə olunmağın mənası yoxdur konstruktor misalını yarada bilməyəcəyiniz üçün nömrə . Həm də daxili olaraq qeyd edin nömrə aşağıdakı kimi sinfə çevrilir. Biz kimi bacarmaq yaratma nömrə obyektləri açıq şəkildə buna görə də biz bacarmaq çağırma enum konstruktoru birbaşa.

Həmçinin, enum konstruktoru ilə adi sinif konstruktoru arasında fərq nədir? Suala cavab vermək üçün: əslində, yoxdur aralarındakı fərq iki yanaşma. Bununla belə, nömrə construct sizə bəzi əlavə dəstəkləyici metodlarla təmin edir, məsələn, values(), valueOf() və s. sinif -özəl-ilə- konstruktor yanaşma.

Bundan əlavə, enumların məqsədi nədir?

The nömrə adlandırılmış tam sabitlərin siyahısını elan etmək üçün istifadə olunur. istifadə edərək müəyyən edilə bilər nömrə birbaşa ad məkanı, sinif və ya struktur daxilində açar söz. The nömrə hər bir sabitə ad vermək üçün istifadə olunur ki, onun adından istifadə edərək sabit tam ədədə istinad olunsun. Misal: nömrə.

Sadalamalar yaradıla bilərmi?

Enums ictimai konstruktorları dəstəkləmir və buna görə də ola bilməz yaradılmışdır . Enums bağlı sabitlərin sabit dəstinə malik olduğunuz zaman üçündür. Tam bir misal olacaq hər biri üçün yaradılmalıdır nömrə Sabit.

Tövsiyə: