Apakah Jenis Dinamik dalam C#

Apakah Jenis Dinamik Dalam C



Jenis dinamik pertama kali diperkenalkan dalam C# versi 4.0, jenis dinamik membolehkan untuk mengisytiharkan pembolehubah dengan dinamik kata kunci. Ini bermakna jenis pembolehubah ditentukan semasa pelaksanaan program, bukannya semasa fasa penyusunan. Fleksibiliti ini terbukti bermanfaat apabila berurusan dengan data yang jenisnya masih tidak diketahui sehingga masa jalan.

Apakah itu Dynamic Typing

Penaipan dinamik membenarkan untuk memberikan jenis nilai yang berbeza kepada pembolehubah yang sama semasa masa jalan. Tidak seperti penaipan statik, di mana jenis pembolehubah ditentukan pada masa penyusunan dan kekal tetap, penaipan dinamik menawarkan fleksibiliti dengan menentukan jenis pada masa jalan berdasarkan nilai yang ditetapkan. Ia menghapuskan pemeriksaan jenis masa kompilasi dengan menangguhkannya kepada masa jalan.

Dalam menaip dinamik, semakan jenis tidak dilakukan oleh pengkompil semasa penyusunan. Sebaliknya, jenis pembolehubah ditentukan pada masa jalan berdasarkan nilai yang diberikan. Ini membolehkan pengikatan lewat, di mana panggilan kaedah dan akses ahli diselesaikan secara dinamik berdasarkan jenis objek sebenar.







Cara menggunakan Jenis Dinamik dalam C#

Untuk menggunakan jenis dinamik dalam C#, anda hanya mengisytiharkan pembolehubah menggunakan kata kunci dinamik. Sebagai contoh:



myVariable dinamik = 'Hai dunia!' ;

Dalam contoh ini, myVariable diisytiharkan sebagai pembolehubah dinamik dan diberikan nilai 'Hello, World!'. Pada masa jalan, jenis myVariable akan ditentukan sebagai rentetan.



Contoh Menggunakan Jenis Dinamik dalam C#

Kod ini menunjukkan penggunaan kata kunci dinamik dalam C#:





menggunakan Sistem ;
Program kelas awam
{
awam statik batal Utama ( )
{
myDynamicVariable dinamik = 42 ;
Konsol. WriteLine ( 'Nilai: {0}, Jenis: {1}' , myDynamicVariable , myDynamicVariable. GetType ( ) ) ;

myDynamicVariable = 'Hai dunia!' ;
Konsol. WriteLine ( 'Nilai: {0}, Jenis: {1}' , myDynamicVariable , myDynamicVariable. GetType ( ) ) ;

myDynamicVariable = salah ;
Konsol. WriteLine ( 'Nilai: {0}, Jenis: {1}' , myDynamicVariable , myDynamicVariable. GetType ( ) ) ;

myDynamicVariable = Masa tarikh. Sekarang ;
Konsol. WriteLine ( 'Nilai: {0}, Jenis: {1}' , myDynamicVariable , myDynamicVariable. GetType ( ) ) ;

MyCustomFunction ( myDynamicVariable ) ;
}

awam statik batal MyCustomFunction ( data dinamik )
{
Konsol. WriteLine ( 'Output Fungsi Tersuai: {0}' , data ) ;
}
}

Kata kunci dinamik membenarkan pembolehubah ditaip secara dinamik, bermakna jenisnya boleh berubah semasa masa jalan. Dalam kod, pembolehubah bernama myDynamicVariable diisytiharkan sebagai dinamik dan pada mulanya diberikan nilai integer 42. Ia kemudian dicetak bersama dengan jenisnya menggunakan Console.WriteLine.

Seterusnya, myDynamicVariable diberikan nilai rentetan (“Hello World!”) dan sekali lagi dicetak dengan jenisnya. Proses yang sama diulang untuk nilai Boolean dan akhirnya untuk tarikh dan masa semasa yang diperoleh menggunakan DateTime.Now.



Kod ini juga termasuk MyCustomFunction yang mengambil data parameter dinamik dan mencetaknya. Fungsi myDynamicVariable dipanggil argumen, menunjukkan bahawa pembolehubah dinamik boleh dihantar ke fungsi dan jenisnya boleh ditentukan pada masa jalan.

Kesimpulan

Jenis dinamik dalam C# 4.0 membenarkan pembolehubah diisytiharkan tanpa menyatakan jenisnya, yang berguna apabila bekerja dengan data jenis yang tidak diketahui pada masa jalan. Penaipan dinamik membolehkan pengkompil melangkau pemeriksaan jenis semasa penyusunan. Sebaliknya, jenis pembolehubah ditentukan apabila program dijalankan, berdasarkan nilai yang dipegangnya. Baca lebih lanjut mengenai jenis dinamik dalam artikel ini.