Dart tili bo'yicha qo'llanma 1-bob. Dart tiliga kirish Dart nima. Birinchi dastur




Download 283,65 Kb.
bet14/35
Sana16.05.2024
Hajmi283,65 Kb.
#237313
1   ...   10   11   12   13   14   15   16   17   ...   35
Bog'liq
Dart tili bo\'yicha qo\'llanma 1-bob. Dart tiliga kirish Dart nima

Ob'ekt sifatida ishlash

Dart tilidagi har qanday funksiya Funksiya turini ifodalaydi va aslida alohida obyekt sifatida harakat qilishi mumkin. Masalan, biz funktsiya ob'ektini belgilashimiz, uni dinamik ravishda qandaydir funksiyaga havola qilishimiz va uni chaqirishimiz mumkin:




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

void main() {
Function func = hello;
func(); // Hello!
func = bye;
func(); // Goodbye!
}
void hello(){
print("Hello!");
}
void bye(){
print("Goodbye!");
}

Bunda Function - func tipidagi o'zgaruvchi aniqlanadi va unga salom funksiyasiga havola beriladi. Keyin func o'zgaruvchisini normal funksiya sifatida bajaramiz, aslida bu o'zgaruvchi tegishli bo'lgan funksiyani chaqiramiz. Bundan tashqari, biz o'zgaruvchiga tegishli funktsiyani dinamik ravishda o'zgartirishimiz mumkin.


Konsol chiqishi:

Hello!
Goodbye!

Funktsiyalar boshqa funktsiyalar uchun parametr sifatida harakat qilishi mumkin:




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

void main() {
showMessage(hello);
showMessage(bye);
}
void showMessage(Function func){
func(); // вызываем переданную функцию
}
void hello(){
print("Hello!");
}
void bye(){
print("Goodbye!");
}

Bu yerda salom va xayr funksiyalari parametr sifatida showMessage funksiyasiga uzatiladi. ShowMessage-ning o'zida biz o'tgan funktsiyalarni chaqirishimiz mumkin.


Bundan tashqari, funktsiya qaytish qiymati sifatida harakat qilishi mumkin:




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

void main() {
Function message = getMessage(11);
message();
message = getMessage(15);
message();
}
Function getMessage(int hour){
if(hour < 12) return morning;
else return evening;
}
void morning(){
print("Good morning!");
}
void evening(){
print("Good evening!");
}

Bu holda getMessage funksiyasi uzatilgan raqamga qarab ertalab yoki kechki funksiyani qaytaradi.


Keyin, dasturda biz funktsiyani olishimiz va uni chaqirishimiz mumkin:




1
2

Function message = getMessage(11);
message();



Download 283,65 Kb.
1   ...   10   11   12   13   14   15   16   17   ...   35




Download 283,65 Kb.

Bosh sahifa
Aloqalar

    Bosh sahifa



Dart tili bo'yicha qo'llanma 1-bob. Dart tiliga kirish Dart nima. Birinchi dastur

Download 283,65 Kb.