Rumah > Artikel > pembangunan bahagian belakang > Kaedah terbeban dan kekaburan dalam C#
Dengan kaedah lebih muatan, anda boleh mempunyai berbilang takrifan nama fungsi yang sama dalam skop yang sama. Takrifan fungsi mesti berbeza dalam jenis dan/atau bilangan parameter dalam senarai parameter.
Mari kita lihat contoh. Di sini, panggilan pergi ke kaedah dengan parameter tunggal -
using System; class Student { static void DisplayMarks(int marks1 = 90) { Console.WriteLine("Method with one parameter!"); } static void DisplayMarks(int marks1, int marks2 = 95) { Console.WriteLine("Method with two parameters!"); } static void Main() { DisplayMarks(97); } }
Sekarang mari kita lihat perkara yang membuat panggilan samar-samar. Kekeliruan di sini ialah kaedah kedua memerlukan dua parameter lalai, manakala kaedah pertama memerlukan satu parameter untuk menjadi lalai. Ini mewujudkan kekaburan.
using System; class Student { static void DisplayMarks(int marks1 = 90, int marks2 = 80) { Console.WriteLine("Method with two parameters!"); } static void DisplayMarks(int marks1, int marks2 = 80, marks3 = 98) { Console.WriteLine("Method with three parameters!"); } static void Main() { DisplayMarks(80); } }
Atas ialah kandungan terperinci Kaedah terbeban dan kekaburan dalam C#. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!