Konstantalar va doimiy sinf konstruktorlari




Download 283.65 Kb.
bet18/35
Sana28.02.2022
Hajmi283.65 Kb.
#18225
1   ...   14   15   16   17   18   19   20   21   ...   35
Bog'liq
Dart tili
Tohirov-Odilbek-1, Тўлов топши%D, alifatik bir asosli karbon kislotalarning gomologik qatori , Asosiy qisim, 14 tayyor mahsulot, Документ Microsoft Word (2) крилллл, menejment2, yurish qismiga txk O\'MT (2), Abdullayev Jo’ra Xudoyorovich, Bayonnoma, Qurilish materiallari va byumlari, Полевые транзисторы1, жиноят ишида мавжуд хужжатлар, îáΦ¿¡á σá¼ ¼Ñσá¡¿º¼½Ñα »á¡¿¡Ñ¡ 100 ß«αáπ QQ
Konstantalar va doimiy sinf konstruktorlari

Sinf konstantalari


Muntazam o'zgaruvchan maydonlarga qo'shimcha ravishda, sinflar doimiylarni belgilashi mumkin. Konstantalarni aniqlash uchun yakuniy kalit so'zdan foydalanishingiz mumkin:


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18

void main (){
Person tom = Person("Tom", 23);
print(tom.minAge);
}
class Person{
String name = "";
int age = 1;
final minAge = 1;
Person(n, a){
this.name = n;
this.age = a;
}
}

Konstruktorni chaqirishdan oldin sinf doimiy qiymatlari o'rnatilishi kerak. Bu, yuqoridagi misolda bo'lgani kabi, konstantalarni aniqlashda sodir bo'lishi mumkin:




1

final minAge = 1;

Yana bir variant - konstruktor parametri orqali konstanta qiymatini o'rnatish:




1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18

void main (){
Person tom = Person(4, "Tom", 23);
print(tom.minAge); // 4
}
class Person{
String name = "";
int age = 1;
final minAge;
Person(this.minAge, n, a){
this.name = n;
this.age = a;
}
}

Uchinchi variant - initsializator yordamida doimiy qiymatlarni o'rnatish:




1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18

void main (){
Person tom = Person(6, "Tom", 23);
print(tom.minAge); // 7
}
class Person{
String name = "";
int age = 1;
final minAge;
Person(mAge, name, age): minAge= mAge + 1{
this.name = name;
this.age = age;
}
}

Bunday holda, konstanta minAge + 1 parametrining qiymatini oladi, ya'ni konstantalar qiymati dinamik hisoblangan qiymatlarni ifodalashi mumkin.


Doimiy konstruktorlar


Sinflar const konstruktorlarini o'z ichiga olishi mumkin. Bunday konstruktorlar o'zgarmas ob'ektlarni yaratish uchun mo'ljallangan. Const konstruktorlari const kalit so'zi bilan prefikslanadi. Bunday konstruktorni belgilaydigan sinf o'zgaruvchilarni o'z ichiga olmaydi, lekin konstantalarni aniqlay oladi. Bundan tashqari, const konstruktorlari tanasiga ega emas:


1
2
3
4
5
6
7
8
9
10
11
12
13
14

void main (){
Person tom = const Person("Tom", 23);
print(tom.name); // Tom
}
class Person{
final String name;
final int age;
// константный конструкор
const Person(this.name, this.age);
}

Doimiy yasovchi chaqirilganda uning chaqiruvidan oldin const kalit so'zi qo'yiladi: Shaxs tom = const Shaxs ("Tom", 23);




Download 283.65 Kb.
1   ...   14   15   16   17   18   19   20   21   ...   35




Download 283.65 Kb.

Bosh sahifa
Aloqalar

    Bosh sahifa



Konstantalar va doimiy sinf konstruktorlari

Download 283.65 Kb.