Статик ба Статик бус арга
Арга гэдэг нь тодорхой даалгаврыг гүйцэтгэхийн тулд хийгдсэн цуврал мэдэгдлүүд юм. Арга нь орцыг авч, гаралтыг гаргаж чаддаг. Статик ба статик бус аргууд нь объект хандалтат програмчлалын хэлэнд байдаг хоёр төрлийн арга юм. Статик арга нь ангитай холбоотой арга юм. Объекттой холбоотой аргыг статик бус (жишээ) арга гэж нэрлэдэг. Объект хандалтат хэлэнд аргуудыг объектод хадгалагдсан өгөгдөл дээр ажиллах механизм болгон ашигладаг.
Статик арга гэж юу вэ?
Объект хандалтат програмчлалд статик арга нь ангитай холбоотой арга юм. Тиймээс статик аргууд нь тухайн ангийн тодорхой жишээн дээр ажиллах чадваргүй байдаг. Статик аргыг агуулсан ангийн объектыг ашиглахгүйгээр статик аргуудыг дуудаж болно. Жава хэл дээрх статик аргыг тодорхойлох жишээг доор харуулав. Java дээр статик аргыг тодорхойлохдоо статикийг ашиглах шаардлагатай.
нийтийн анги MyClass { public static void MyStaticMethod() { // статик аргын код }
}
Дээр тодорхойлсон статик аргыг харьяалагдах ангийнхаа нэрийг ашиглан дараах байдлаар дуудаж болно.
MyClass. MyStaticMethod();
Анхаарах нэг чухал зүйл бол статик аргууд нь зөвхөн статик гишүүдэд хандах боломжтой.
Статик бус арга гэж юу вэ?
Статик бус арга буюу жишээний арга нь анги дахь объекттой холбоотой арга юм. Тиймээс статик бус аргуудыг тухайн аргыг тодорхойлсон ангийн объектыг ашиглан дууддаг. Статик бус арга нь статик бус гишүүд болон ангийн статик гишүүдэд хандах боломжтой. Олон объект хандалтат хэлэнд (C++, C, Java гэх мэт) статик бус аргыг дуудах үед уг аргыг дуудсан объектыг далд аргумент болгон дамжуулдаг (үүнийг 'энэ' лавлагаа гэж нэрлэдэг). Тиймээс, аргын дотор энэ түлхүүр үгийг тухайн аргыг нэрлэсэн объект руу чиглүүлэхэд ашиглаж болно. Java дээр жишээ аргыг тодорхойлох жишээг доор харуулав.
нийтийн анги MyClass { public void MyInstanceMethod() { // жишээ аргын код }
}
Дээр тодорхойлсон жишээний аргыг хамаарах ангийн объектыг ашиглан дараах байдлаар дуудаж болно.
MyClass objMyClass=new MyClass();
objMyClass. MyInstanceMethod ();
Статик ба Статик бус аргын ялгаа нь юу вэ?
Статик аргууд нь ангитай холбоотой аргууд байдаг бол статик бус аргууд нь ангийн объектуудтай холбоотой аргууд юм. Статик бус аргыг дуудахын тулд эхлээд ангийг үүсгэсэн байх шаардлагатай боловч статик аргуудад ийм шаардлага байхгүй. Статик аргыг эзэмшдэг ангийн нэрийг ашиглан тэдгээрийг зүгээр л дуудаж болно. Өөр нэг чухал ялгаа нь статик бус арга нь ихэвчлэн тухайн аргыг дуудсан объектын лавлагаатай байдаг бөгөөд аргын доторх this түлхүүр үгээр хандах боломжтой байдаг. Гэхдээ энэ түлхүүр үг нь тодорхой объекттой холбоогүй тул статик аргуудад ашиглах боломжгүй.