Шинжүүд

C# -ийн класс, бүтцүүдэд ердийн аргуудаас гадна шинж гэж нэрлэдэг тусгай аргууд байдаг. Тэдгээр нь класс, структурийн талбарт хандах, утгуудыг авах, өөрчлөх боломжуудыг өгдөг.   

Шинжийн тодорхойлолт

Шинжийн стандарт тодорхойлолт

[модификатор] шинжийн_төрөл шинжийн_нэр
{
    get { шинжийн утгыг авахад хийгдэх үйлдлүүд}
    set { шинжийн утгыг тавихад хийгдэх үйлдлүүд}
}

байдаг. Шинжийн тодорхойлолтын эхэнд төрөл бүрийн модификаторууд тавигдаж болно. Тухайлбал хандалтын модификаторууд модификатор. Дараа нь шинжийн төрөл тэгээд шинжийн нэр байна. Шинжийн бүрэн тодорхойлолт get, set гэсэн хоёр блокийг агуулна.

Материалыг тусгай эрхтэй хэрэглэгч үзнэ.

request_quoteТусгай эрх авах

Мэдээлэл таалагдсан бол найзуудтайгаа хуваалцаарай.

  Нээгдсэн тоо: 392 Бүртгүүлэх

Онцгой нөхцлийг дуудсан кодийг try блок эсхүл онцгой нөхцлийг боловсруулах catch блокгүй try..catch бүтцэд байршуулсан бол систем тохирох боловсруулагчийг дуудалтын стект хайна. Жишээ нь

try
{
    TestClass.Method1();
}
catch (DivideByZeroException ex)
{
    Console.WriteLine($"Main арга дахь catch : {ex.Message}");
}
finally
{
    Console.WriteLine("Main арга дахь finally блок");
}
Console.WriteLine("Main аргын төгсгөл");
 
class TestClass
{
    public static void Method1()
    {
        try
        {
            Method2();
        }
        catch (IndexOutOfRangeException ex)
        {
            Console.WriteLine($"Method1 аргын catch: {ex.Message}");
        }
        finally
        {
            Console.WriteLine("Method1 аргын finally блок");
        }
        Console.WriteLine("Method1 аргын төгсгөл");
    }
    static void Method2()
    {
        try
        {
            int x = 8;
            int y = x / 0;
        }
        finally
        {
            Console.WriteLine("Method2 аргын finally блок");
        }
        Console.WriteLine("Method2 аргын төгсгөл");
    }
}

кодийг авч үзье.

  Нээгдсэн тоо: 304 Нийтийн

Програмчлалын c# хэл өргөн боломжтой, обьект хандлагат парадигмийг дэмждэг, том төслүүдийн боловсруулалтад өргөнөөр ашиглагддаг, маш универсал хэл. Хэлийг Microsoft хөгжүүлдэг нь л өөрөө ихийг хэлнэ. Миний бодлоор c# -ийн зарим шийдлүүдийг шууд ойлгоход хүндрэлтэй байдаг нь хэлний хийсвэрлэлттэй холбоотой байдаг болов уу. Хэлний боломжийг сайн судлан мэдэхгүйгээр сайн, хүчирхэг гэсэн утгаар төслийн үндсэн хэлээр ашиглах нь зөв биш шийдэл болов уу. Та c# хэл дээр код бичдэг, бичихээр суралцаж байгаа бол хэлний боломж, бололцоог сайн судлахыг зөвлөе.      

Виртуал аргууд, шинжүүд, Далд арга, шинжүүд хичээлүүдээр суурь классаас өвлөн авсан аргуудын ажиллагааг өөрчлөх нуух, дахин тодорхойлох гэсэн хоёр аргыг үзсэн. Эдгээр аргууд хоорондоо ямар ялгаатайг харцгаая.

  Нээгдсэн тоо: 479 Төлбөртэй

.NET фреймворк ердийн төрлүүдээс гадна ерөнхийлөгдсөн (generics) төрлүүд болон ерөнхийлөгдсөн аргуудын үүсгэлтийг дэмждэг. Энэхүү боломжийн онцлогийг судлахын өмнө ерөнхийлөгдсөн төрлүүд байхгүй бол үүсч болох асуудлуудыг авч үзье. Жишээ нь

class Person
{
    public int Id { get;}
    public string Name { get;}
    public Person(int id, string name)
    {
        Id = id;
        Name = name;
    }
}

гэж хэрэглэгчийн өгөгдлийг хадгалах классийг тодорхойллоо гэж үзье. Person класст Id - хэрэглэгчийн давтагдахгүй идентификатор, Name - хэрэглэгчийн нэр гэсэн хоёр шинжийг тодорхойлсон. Энд хэрэглэгчийн идентификаторийг тоон утгаар өгсөн тул шинж 1, 2, 3, 4 гэх мэтээр утгуудыг авна.

  Нээгдсэн тоо: 293 Бүртгүүлэх

Төлөв байдлын үүргийн гинж (Chain of responsibility) загварчлалын хэв шаардлагыг хэд хэдэн обьектууд боловсруулах боломжийг олгодог тул шаардлагын дамжуулагч хүлээн авагчтай хатуу уяа /холбоо/ үүсэхээс сэргийлдэг. Боломжит бүх боловсруулагчид гинж үүсгэн аль нэг обьект шаардлагыг боловсруулах хүртэл шаардлага өөрөө энэ гинжээр дамжина. Шаардлагыг хүлээн авсан обьект нэг бол шаардлагыг боловсруулна эсхүл шаардлагыг гүйцэтгүүлэхээр дараагийн обьектод шилжүүлдэг.

Үйл явдал /event/ тодорхой үйлдэл хийгдсэн талаар системд мэдэгддэг. Хэрвээ бид энэхүү үйлдлийг ажиглах хэрэгтэй бол яг энд…

Нээгдсэн тоо : 242

 

Манай төсөл олон хуудсуудтай болон тэдгээрийн хооронд динамикаар шилжилт хийж байгаа ч тухайн үед шилжилт хийгдсэн хуудаст тохирох…

Нээгдсэн тоо : 331

 

Зочин (Visitor) паттерн классуудыг өөрчлөхгүйгээр тэдгээрийн обьектуудын үйлдлийг тодорхойлох боломжийг олгоно. Зочин хэвийг ашиглахдаа классуудын хоёр ангилалыг тодорхойлно.…

Нээгдсэн тоо : 295

 

Лямбда-илэрхийлэл нь нэргүй аргын хураангуй бичилтийг илэрхийлнэ. Лямбда-илэрхийлэл утга буцаадаг, буцаасан утгыг өөр аргын…

Нээгдсэн тоо : 391

 

Кодийн сайжруулалт /рефакторинг/ хичээлээр програмийн кодоо react -ийн зарчимд нийцүүлэн компонентод салгасан.…

Нээгдсэн тоо : 434

 

Хадгалагч (Memento) хэв обьектын дотоод төлвийг түүний гадна гаргаж дараа нь хайрцаглалтын зарчмыг зөрчихгүйгээр обьектыг сэргээх боломжийг олгодог.

Нээгдсэн тоо : 463

 

Делегаттай нэргүй арга нягт холбоотой. Нэргүй аргуудыг делегатийн хувийг үүсгэхэд ашигладаг.
Нэргүй аргуудын тодорхойлолт delegate түлхүүр үгээр…

Нээгдсэн тоо : 538

 

Математикт харилцан урвуу тоонууд гэж бий. Ямар нэгэн тооны урвуу тоог олохдоо тухайн тоог сөрөг нэг зэрэг дэвшүүлээд…

Нээгдсэн тоо : 617

 

Төсөлд react-router-dom санг оруулан чиглүүлэгчдийг бүртгүүлэн тохируулсан Санг суулган тохируулах хичээлээр бид хуудас…

Нээгдсэн тоо : 646

 
Энэ долоо хоногт

тэнцэтгэл бишийг бод.

Нээгдсэн тоо : 1093

 

илэрхийллийн x=3 утгыг ол.

Нээгдсэн тоо : 506

 

16 см суурьтай, 10 см хажуу талтай адил хажуут гурвалжин өгөгджээ. Гурвалжинд багтсан болон гурвалжинг багтаасан тойргуудын радиус болон тойргуудын төв хоорондын зайны нийлбэрийг ол.

Нээгдсэн тоо : 413