Lecture7
Click here to load reader
Transcript of Lecture7
![Page 1: Lecture7](https://reader038.fdocuments.net/reader038/viewer/2022100513/58a56da81a28ab20528b6edb/html5/thumbnails/1.jpg)
L o g o
Объект хандлагат програмчлал
Улаанбаатар Их Сургууль 2013 он
ОХП-ын дотоод асуудалбагш Б.Ганзориг
![Page 2: Lecture7](https://reader038.fdocuments.net/reader038/viewer/2022100513/58a56da81a28ab20528b6edb/html5/thumbnails/2.jpg)
L o g o
Объект хандлагат програмчлал Улаанбаатар Их Сургууль 2013 он
Агуулга
getClass аргын хэрэглээ3
Удамшлын хэрэглээ4
1
2
Finilize аргын хэрэглээ
toString аргын хэрэглээ
![Page 3: Lecture7](https://reader038.fdocuments.net/reader038/viewer/2022100513/58a56da81a28ab20528b6edb/html5/thumbnails/3.jpg)
L o g o
Улаанбаатар Их Сургууль 2013 он
Удамшлын зохион байгуулалт
Объект хандлагат програмчлал
java.lang багц дотор тодорхойлсон object нь бүх ангиудад шаардагдах араншинг тодорхойлон хэрэгжүүлсэн байдаг.
object ангиас олон анги удамшиж тэдгээр ангиудаас өөр ангиуд удамших зэргээр object –н шатлал үүсдэг.
Бүх ангиудын ерөнхий анги нь ангийн шатлалын оройд нь байрлах оройн анги буюу object анги юм.
![Page 4: Lecture7](https://reader038.fdocuments.net/reader038/viewer/2022100513/58a56da81a28ab20528b6edb/html5/thumbnails/4.jpg)
L o g o
Улаанбаатар Их Сургууль 2013 он
Удамшлын зохион байгуулалт
Объект хандлагат програмчлал
Шатлалаас доошлох тусам обьектууд нь илүү тусгаарласан араншинтай болно.
Өөр ангиас удамших замаар дэд анги үүснэ.
Өвөг анги гэдэг тухайн ангийн шууд өвөг юмуу бусад удамшуулж буй ангиуд юм.
Нэг нь зөвхөн ганц шууд дээд ангитай байна.
![Page 5: Lecture7](https://reader038.fdocuments.net/reader038/viewer/2022100513/58a56da81a28ab20528b6edb/html5/thumbnails/5.jpg)
L o g o
Улаанбаатар Их Сургууль 2013 он
Удамшлын зохион байгуулалт
Объект хандлагат програмчлал
Дэд анги нь дээд ангийнхаа бүх гишүүн хувьсагчид болон аргыг удамшуулж авдаг
Дэд анги нь удамшиж авсан ангийнхаа хувьсагч болон аргуудтай бүрэн харьцах албагүй.
Дэд анги нь дээд ангиасаа удамшиж ирсэн хаалттай гишүүн өгөгдөлтэй харьцаж чадахгүй.
Байгуулагч бол гишүүн биш учир дэд ангидаа удамшихгүй.
![Page 6: Lecture7](https://reader038.fdocuments.net/reader038/viewer/2022100513/58a56da81a28ab20528b6edb/html5/thumbnails/6.jpg)
L o g o
Улаанбаатар Их Сургууль 2013 он
Аргыг дахин тодорхойлох
Объект хандлагат програмчлал
Дэд ангиудын аргыг дахин тодорхойлох чадвар нь өөртэйгээ хамгийн төстэй араншин бүхий дээд ангийг удамшуулан араншинг нь өөртөө тохируулан өөрчлөх боломжийг дэд ангиудад олгодог.
Жишээ нь: object анги нь тухайн нэг төрлийн төлийн хэлхээ дүрслэлийг буцаадаг toString нэртэй төл аргыг агуулдаг.
![Page 7: Lecture7](https://reader038.fdocuments.net/reader038/viewer/2022100513/58a56da81a28ab20528b6edb/html5/thumbnails/7.jpg)
L o g o
Улаанбаатар Их Сургууль 2013 он
Аргыг дахин тодорхойлох
Объект хандлагат програмчлал
Бүх анги энэ аргыг удамшуулдаг. Object анги доторх энэ аргын хэрэгжилт нь дэд ангиудад ач холбогдолгүй.
Тэгэхээр ангийнхаа тухай илүү дэлгэрэнгүй мэдээллийг өсгөхийн тулд энэ аргыг дахин тодорхойлохыг зөвлөж байна.
Энэ нь ялангуяа зүгшрүүлэлт хийхэд ач холбогдолтой байдаг.
![Page 8: Lecture7](https://reader038.fdocuments.net/reader038/viewer/2022100513/58a56da81a28ab20528b6edb/html5/thumbnails/8.jpg)
L o g o
Улаанбаатар Их Сургууль 2013 он
Аргыг дахин тодорхойлох
Объект хандлагат програмчлал
toString-г дахин тодорхойлох жишээг доор харууллаа.
![Page 9: Lecture7](https://reader038.fdocuments.net/reader038/viewer/2022100513/58a56da81a28ab20528b6edb/html5/thumbnails/9.jpg)
L o g o
Улаанбаатар Их Сургууль 2013 он
Аргыг дахин тодорхойлох
Объект хандлагат програмчлал
Дахин тодорхойлсон аргын нэр, хэмжигдэхүүний тоо, төрөл болон буцаах төрөл нь адилхан байдаг.
Дэд ангийн буцаах төрөл нь дээд ангийнхаа буцаах төрөлтэй ижилхэн байна
![Page 10: Lecture7](https://reader038.fdocuments.net/reader038/viewer/2022100513/58a56da81a28ab20528b6edb/html5/thumbnails/10.jpg)
L o g o
Улаанбаатар Их Сургууль 2013 он
Аргыг дахин тодорхойлох
Объект хандлагат програмчлал
Аргыг дахин тодорхойлоход бие биенээс нь ялгаатай байлгах шаардлагатай бол throws тодорхойлолт оруулж болно.
Дээд ангидаа final гэж зарлагдсан аргыг дэд ангид нь дахин тодорхойлж болохгүй.
![Page 11: Lecture7](https://reader038.fdocuments.net/reader038/viewer/2022100513/58a56da81a28ab20528b6edb/html5/thumbnails/11.jpg)
L o g o
Улаанбаатар Их Сургууль 2013 он
Аргыг дахин тодорхойлох
Объект хандлагат програмчлал
Дээд ангидаа abstract гэж зарлагдсан ангийг заавал дахин тодорхойлох эсвэл abstract болгон зарлах ёстой.
Дээд анги доторх аргуудыг дахин тодорхойлж болно. toString аргыг дахин тодорхойлох жишээ авч үзье.
![Page 12: Lecture7](https://reader038.fdocuments.net/reader038/viewer/2022100513/58a56da81a28ab20528b6edb/html5/thumbnails/12.jpg)
L o g o
Улаанбаатар Их Сургууль 2013 он
Аргыг дахин тодорхойлох
Объект хандлагат програмчлал
![Page 13: Lecture7](https://reader038.fdocuments.net/reader038/viewer/2022100513/58a56da81a28ab20528b6edb/html5/thumbnails/13.jpg)
L o g o
Улаанбаатар Их Сургууль 2013 он
Аргыг дахин тодорхойлох
Объект хандлагат програмчлал
Дээрх жишээнд дээд ангийн аргыг дахин тодорхойлох замаар тухайн ангийн чадварыг баяжуулж байна.
Дэд ангийн аргын аргументын тоо, төрлийг өөрчлөх замаар аргыг давхардуулдаг.
![Page 14: Lecture7](https://reader038.fdocuments.net/reader038/viewer/2022100513/58a56da81a28ab20528b6edb/html5/thumbnails/14.jpg)
L o g o
Улаанбаатар Их Сургууль 2013 он
Аргыг далдлах
Объект хандлагат програмчлал
Хэрэв дэд ангийн аргыг дээд ангийн аргатай адилхан тодорхойлсон бол дэд ангийн уг арга нь дээд ангийн харгалзах аргыг далдалдаг.
Далдлах, дахин тодорхойлох хоёрын хооронд том ялгаа бий.
Үүнийг жишээн дээр авч үзье.
![Page 15: Lecture7](https://reader038.fdocuments.net/reader038/viewer/2022100513/58a56da81a28ab20528b6edb/html5/thumbnails/15.jpg)
L o g o
Улаанбаатар Их Сургууль 2013 он
Аргыг далдлах
Объект хандлагат програмчлал
Энэ жишээ нь хоёр ангиас бүрдэнэ. Эхний анги нь нэг төл арга, нэг анги арга
агуулсан animal анги юм.
![Page 16: Lecture7](https://reader038.fdocuments.net/reader038/viewer/2022100513/58a56da81a28ab20528b6edb/html5/thumbnails/16.jpg)
L o g o
Улаанбаатар Их Сургууль 2013 он
Аргыг далдлах
Объект хандлагат програмчлал
![Page 17: Lecture7](https://reader038.fdocuments.net/reader038/viewer/2022100513/58a56da81a28ab20528b6edb/html5/thumbnails/17.jpg)
L o g o
Улаанбаатар Их Сургууль 2013 он
Аргыг далдлах
Объект хандлагат програмчлал
Энэхүү cat анги нь animal доторх override нэртэй дэд аргыг дахин тодорхойлж animal доторх hide() нэртэй аргыг далдалж байна.
Cut ангийн main арга нь cat ангийг заагч болгон хувиргаад үүссэн төл болох myAnimal объектын hide болон override аргуудыг дуудаж байна.
![Page 18: Lecture7](https://reader038.fdocuments.net/reader038/viewer/2022100513/58a56da81a28ab20528b6edb/html5/thumbnails/18.jpg)
L o g o
Улаанбаатар Их Сургууль 2013 он
Объект хандлагат програмчлал