Recommended Sw203 Lecture6 Inheritance
Sw203 Lecture10 Polymorphism
өгөгдлийн сангийн системийн үндэс
Sw203 Lecture4 Class Object
сургуулийн мэдээллийн системийг хөгжүүлэх нь
u.cs101 "Алгоритм ба програмчлал" Лекц №1
Ogogdliin sangiin zohion baiguulalt lekts
Java programchlal s.uuganbayr
Давталттай алгоритмын бодлогууд
Sw203 Lecture5 Class Acess Modifiers
U.cs101 алгоритм программчлал-2
Sw203 Lecture9 Encapsulation
Cs203 lecture13 composition
Жава хэлний сурах бичиг Java helnii surah bichig Mongol
More Related Content Sw203 Lecture6 Inheritance
Sw203 Lecture10 Polymorphism
өгөгдлийн сангийн системийн үндэс
Sw203 Lecture4 Class Object
сургуулийн мэдээллийн системийг хөгжүүлэх нь
What's hot (20)
u.cs101 "Алгоритм ба програмчлал" Лекц №1
Ogogdliin sangiin zohion baiguulalt lekts
Java programchlal s.uuganbayr
Давталттай алгоритмын бодлогууд
Sw203 Lecture5 Class Acess Modifiers
U.cs101 алгоритм программчлал-2
Sw203 Lecture9 Encapsulation
Cs203 lecture13 composition
Viewers also liked (20)
Жава хэлний сурах бичиг Java helnii surah bichig Mongol
Sw203 Lecture3 Advanced Java Program
Database design & Normalization (1NF, 2NF, 3NF)
Sw203 Lecture7 Method Override
Lecture 4 нийлмэл удамшил
Small Basic を実務で使ってみませんか - CLR/H第56回勉強会ライトニングトーク
Similar to CS203 Лекц02 Oop (20)
Java Programming Жава Програмчлалын тухай Лекц
More from Jargalsaikhan Alyeksandr (14)
Computer ethics and system security
Cs203 lecture 14 reflection
Sw203 Lecture12 Composition
S W203 Lecture8 Interface
CS203 Лекц02 Oop1. Объект хандлагат програмчлалын хэл Java Хичээл : C S203 Багш : Д.Энхжаргал Mongolia University of Science & Technology Лекц №2. Java хэлний үүсэл хөгжил, Анхны хялбар програмын бүтэц, ажиллах зарчим 2. ОХТехнологиин үндсэн ойлголтууд ОХТ-ийн үндсэн ойлголтууд: Class Object Instance Message Encapsulation Inheritance & Method override Polymorphism Объект Хандлагат Технологийн тулгын 3 чулуу: E n с apsulation I nheritance P olymorphism буюу товчоор ( EIP) 3. ОХ Технологиийн үндсэн ойлголтууд Class : Ижил шинж чанар болон үйлдлүүдтэй бүлэг объектуудын нэгдэл юм. Өөрөөр хэлбэл: ОХП-д Класс нь өгөгдөл үйлдлүүдээс бүрдэнэ. Object: классын нэг тохиолдол. ӨХ: Класс бол төрөл, объект нь тухайн төрлийн хувьсагч юм. Объект бүр өөрийн дахин давтагдашгүй шинж чанартай. Message: мэдээ, зурвас. ОХП-д объектууд хоорондоо мэдээ дамжуулах бөгөөд Message sending нь нэг ёсондоо объектын гишүүн функц дуудалт юм. Encapsulation -Битүүмжлэл Inheritance - Удамшил Method override -Даран тодорхойлогдсон арга Method overload – Дахин тодорхойлогдсон арга Polymorphism – Олон хэлбэршил Data hiding - Өгөгдлийн далдлалт Method -Арга буюу классын гишүүн функц 4. Java хэлний үүсэл гарал 1991 онд Sun Microsystems Inc компаниас тухайн үеийн зах зээлд ихээхэн нийлүүлэгдэж байсан ахуйн хэрэглээний электрон төхөөрөмжүүдүүдийг байрлалаас (платформоос) үл хамааран удирдах програмчлалын хэлний хэрэгцээ, шаардлагыг соргогоор мэдэрч “Green” төслийг санаачлан хөгжүүлсэн. Хэдийгээр Green төсөл 1993 онд бизнесийн шалтгааны улмаас зогсоход хүрсэн боловч Sun компани нийтийг хамрах болсон вэбийн хэрэглээнд зориулан “Оак” хэлийг интернет програмчлалд ашиглах болсон Хожим нь тэд “Оак” нэртэй өөр програмчлалын хэл байдагийг олж мэдээд 1995 онд програмчлалын хэлнийхээ нэрийг Java болгон өөрчилсөн. Ийнхүү дөрвөн жилийн нөр их хөдөлмөрийн үр дүнд Java хэлийг 1995 онд олон нийтэд албан ёсоор зарлажээ. 5. Java хэлний үүсэл гарал Өнөөдөр Java хэл нь том хэмжээний (large-scale) энтерпрайзын хэрэглээний програм хангамжуудыг хөгжүүлэх, вэб серверүүдийн үйл ажиллагааг сайжруулах, цахилгаан төхөөрөмжүүдийн удирдлагын програмчлал зэрэг олон янзын хэрэглээнд ашиглагдаж байна. Java хэл нь C++ хэл дээр түшиглэн зохиогдсон гэдэг утгаараа түүнд Си хэлний синтакс (бичиглэлийн дүрэм), C++ хэлний объект хандлагат ойлголтуудыг өөртөө шингээсэн тэдгээрийн хязгаарлагдмал, сул талыг шийдвэрлэж чадсан хэрэглээний өргөн боломжтой хүчирхэг хэл юм. Дашрамд дурдахад Си хэл бол бүтэцлэгдсэн буюу уламжлалт програмчлалын хэлний гол төлөөлөгч бөгөөд C++ хэл нь Си хэлэн дээр түшиглэн зохиогдсон. Товчхондоо, C++ хэл нь Си хэлийг обьект хандлагат чанруудаар баяжуулан сайжруулсан хэл юм. үргэлжлэл 6. Java програмын хөгжүүлэлтийн орчин Алхам 1: Java програмаа үүсгэж java өргөтгөлтэй хадгалах. ямар нэг едитор програм ашиглан java өргөтгөлтэй файл (filename.java) үүсгэн хадгална. Алхам 2: Java програмаа байт код руу хөрвүүлэх . Програмаа хөрвүүлэхдээ javac (Java compiler) командыг ашиглана. Тухайлбал, hello.java нэртэй програмыг хөрвүүлэхийн тулд командын урилгын мөрөнд javac hello.java хэмээн бичиж өгнө. Хэрвээ програм алдаагүй хөрвүүлэгдсэн бол програмын хөрвүүлэгдсэн хувилбарыг агуулах .class файл (class өргөтгөлтэй файл) тухайн директорт үүснэ. Байт-код (bytecode) нь Java процоессорт зориулагдсан заавруудын дараалал юм. javac нь бидний бичсэн програмыг байт-код руу хөрвүүлнэ. 7. Java програмын хөгжүүлэлтийн орчин Java Virtual Machine (JVM) гэдэг бол компьютерийн систем дээр ажиллаж буй Java интерпретатор юм. Өх: JVM нь байт-кодыг төв процессорт ойлгомжтой хэл рүү хөрвүүлэгч програм юм. Дээрх зураг дээрх Java интерпретатор (interpreter) нь компьютерийн систем дээр ажиллаж буй биелэгдэх програм бөгөөд компьютерийн систем (платформ) бүр өөрийн гэсэн Java интерпретатортой. "Бодит процессор" гэсэн нь компьютерийн систем ийн төв процессорыг хэлж байна. үргэлжлэл 8. Java програмын хөгжүүлэлтийн орчин Java -гийн байт - кодууд нь JVM агуулах ямар ч платформ дээр биелэгддэг тул Java хэлийг авсаархан ( portable ) хэлэнд тооцдог. Java виртуаль машин (Virtual Machine) нь байт-кодыг машины хэл рүү хөрвүүлдэг. Тэгэхлээр Java Virtual Machine нь байт-кодын интерпретатор (interpreter) юм. үргэлжлэл 9. Java програмын хөгжүүлэлтийн орчин Алхам 3: Програмыг санах ой руу ачаалах . Програм биелэгдэхийнхээ өмнө санах ойд байрлахыг ачаалах ( loading ) гэнэ. Классын ачаалагч нь програмын байт - кодыг агуулах . class файлыг үндсэн санах ой руу дамжуулдаг. Түүгээр ч зогсохгүй таны програмд ашиглагдсан . class файлуудыг мөн адил санах ойд ачаалдаг. Ачаалагдах тэдгээр . class файлууд нь компьютерийн хатуу дискэнд эсвэл сүлжээнд ч байрладаг байж болох юм. Алхам 4: Байт кодыг хянах . Классууд ачаалагдахад байт-кодыг хянагч ( bytecode verifier ) нь тэдгээр байт-кодууд нь Java -гийн security (нууцлал хамгаалалт)-ын шаардлагуудыг хангаж байгаа эсэхийг нягтлана. Энэ нь сүлжээгээр дамжигдан ирж буй Java програмууд нь таны файлууд болон системийн хэвийн үйл ажиллагаанд саад учруулахгүй байхад онцгой анхаарч аюулгүйн баталгаа гаргаж өгдөг. Алхам 5 : Биелэлт . JVM нь програмын байт-кодыг биелүүлэх замаар програмд тодорхойлсон үйлдлүүдийг гүйцэтгэдэг. Java -гийн эхний хувилбаруудад JVM нь Java байт-кодыг хялбархан хөрвүүлдэг ( interpreter ) байсан. Ихэнхи Java програмууд нь удаан ажилдаг байсан шалтгаан гэвэл JVM тухайн агшинд нэг л байт-кодыг хөрвүүлж биелүүлдэг. JVM -ийг java командаар холбож ажлуулдаг. Тухайлбал, hello нэртэй Java програмыг ажлуулахдаа командын урилгын мөрөнд java hello хэмээн бичиж өгнө. үргэлжлэл 11. Java 2 -ийн just-in-time (JIT) компилятор J ust-in-time (JIT) нь Java програмын биелэлтийн хурдыг нэмэгдүүлэх зорилгоор бүтээгдсэн компилятор юм . JVM-ийн нэг хэсэг бөгөөд байт-кодыг хэсэг хэсгээр хэрэгцээтэй үед нь компиляци хийдэг. Өх: Java програмыг шууд бүхлээр нь биелэх кодонд компиляци хийхэд учир дутагдалтай байдаг учраас just-in-time (хэрэгтэй цагт нь) гэж нэрлэгдэх компилятороор кодыг биелэлтийн үед шаардлагатай хэмжээгээр компиляц хийдэг. Java 2 нь мөн програмын дахин дахин биелэгдэх хэсэг ( Hot spots)-ийг тодорхойлон хөрвүүлэлтийг сайжруулж хурдыг нэмэгдүүлэх боломжоор хангагдсан. 12. Анхны хялбар Java програм ын бичлэг 1 мөрийн public: Хандалтыг тодорхойлогч түлхүүр үг бөгөөд түүнд програмын дурын хэсгээс хандаж болох нийтийн хандалт юм. Анхаар ! main функцыг ( аргыг ) агуулах класс үргэлж public ханд алттай байна. class : Java хэлний бусад програмчлалын хэлнүүдээс ялгарах нэг ялгаа бол түүний үндсэн код ( main функц) ямар нэг класс (class) дотор бай даг . Манай програмын агуулга их хаалт { … }- нд бичигдэнэ. Гэхдээ энэ нь ОХП хэлнүүдийн гол онцлог болсон өгөгдлийн хийсвэрлэл болох класс хараахан биш юм шүү. Энэ нь зүгээр л Java хэлний хувийн онцлог Hello : классын нэр нь програмыг агуулсан файлын нэртэй адилхан байх ёстой. Java хэл нь үсгэн мэдрэгчтэй (case sensitive) хэл. ӨХ: том жижиг үсгийн ялгааг мэдэрдэг. Манай програмын нэр Hello.java байх ёстойг анхаарна уу ! 13. Анхны хялбар Java програм ын бичлэг 2 мөрийн public : main арга ( функц ) public ханд алттай байдаг. Учир нь аливаа програмын үндсэн код болох main аргыг далдлах шаардлагагүй байдаг. static : Аливаа Java програм ажиллах үед JVM нь ямар нэгэн обьект үүсэхээс өмнө санах ойд тогтмол (статикаар) байрлах main аргыг дуудаж ажлуулдаг. Иймд main аргыг зарлахдаа static түлхүүр үгийг ашигладаг. void : main аргыг зарлахдаа буцаах утгыг void ( хоосон) хэмээн тодорхойлсон байна. Энэ нь тухайн арга үйлдлээ гүйцэтгэж дуусаад ямар нэгэн тодорхой утга буцаахгүйг илэрийлж байна . String [] args: аливаа арга ( функц ) -д мэдээлэл (параметр) дамжуулахдаа дугуй хаалт ()-ийг ашигладаг. энд main аргад String төрлийн args нэртэй массивыг параметр болгон тодорхойлсон байна. Тэгэхээр Java програмд аргументууд дамжуулвал тэдгээрийг тэмдэгт мөр төрлийн хувьсагч байдлаар хүлээн авдаг болох нь харагдаж байна. үргэлжлэл 14. Анхны хялбар Java програм ын бичлэг 3 мөрийн System.out.println("Hello world!"); өгүүлбэртэй танилцъя. System.out буюу стандарт гаралтын объектын println хэмээх арга нь стандарт гаралтын төхөөрөмж рүү мэдээлэл гаргах үүрэгтэй арга юм. Өх. println арга нь системийн хандалтыг зохицуулах System хэмээх стандарт классын out объектын арга ( гаралтанд харьяалагдах арга ) юм. Классын хувьсагч болох объектын гишүүн өгөгдөл ба аргуудад хандах бичиглэлийн ерөнхий хэлбэр [Object name]. [variable name] [Object name]. [method name] ([parameters]) Манай жишээнд println аргад Hello world! гэсэн тэмдэрт мөрийг аргумент болгон дамжуулсанаар түүнийг дэлгэцэнд хэвлэж байна. Цаашид бид энэхүү энэхүү System.out объектын println аргыг өргөн ашиглана. үргэлжлэл Програмын код нь тодорхой зорилгын дор тодорхой дарааллаар биелэгдэх statement буюу өгүүлбэрүүдээс бүрдэнэ. Өгүүлбэрүүд нь хоорондоо цэгтэй таслал (;)-аар зааглагддаг. 15. Манай хичээл програмчлалын хэл судлахаас гадна гол нь програмчлалын дэвшилтэт ТЕХНОЛОГИ судалж байгаа гэдэг утгаараа оюутан лабораторийн ажил гүйцэтгэхээс гадна онолын мэдлэгээ бататган, онолын ойлголтуудаар чөлөөтэй жишээ гарган ярилцаж, тэдгээр ойлголтын давуу боломж, хэрэглээний ач холбогдлын талаар тайлбарлах чадвартай байх шаардлагатай. Өнөөдөр бидний хэлэлцэх асуудал ? Эхний лаборатори дээр туршиж үзсэн дасгал ажлаар гүйцэтгэсэн алхмуудын цаана хийгдэж байгаа үйл ажиллагааны зарчмыг сайтар ойлгож, хаанаас нь ч асуусан тайлбарлаж чаддаг байх ! Ямар үед path хувьсагчид утга олгох шаардлага гардаг вэ ? Ямар утга олгодог вэ? Ямар арга замуудаар олгох боломжтой вэ ? Консолоос Java програм ажлуулахад DOS -ийн командуудын үүрэг, хэрэглээ Хэлэлцэх асуудал 16. Encapsulation En capsul ation : Тухайн объектод шаардлагатай өгөгдлүүд болон үйлдлүүдийг нэгтгэн далдлах үйл явц юм. Нэгтгэх: Тухайн объектын өгөгдлүүд болон функцуудыг нэг капсулд хийх. Далдлах: Объектын дотоод бүтцийг далдлах Тухайн объектод шаардлагатай өгөгдлүүд Тухайн объект дээр хийгдэх үйлдлүүд Computer Processor speed RAM Use(); Buy(); 17. Хийсвэрлэл (Abstraction) Хүн төрөлхтөн өөртөө хүндрэлтэй асуудлаа хийсвэрлэн дүрсэлж ирсэн бөгөөд бодит амьдралын биет юмсыг тэр чигээр нь компьютерт буулгах боломжгүй учраас програм зохиогч нь үйл ажиллагаандаа хийсвэрлэлийг өргөнөөр ашигладаг. Програмчлалд бодит амьдралын шаардлагад нийцүүлэн асуудлаа оновчтой хийсвэрлэж оруулсанаар програмын хүндрэл (software complexity)- ийг шийдвэрлэх боломжтой. Програмын хүндрэл (software complexity) яагаад үүсч байна? Аливаа байгууллагын үйл ажиллагаанд програм хангамжийн хэрэглээ улам бүр өсч байна Хэн ч системийг бүхлээр нь ойлгохооргүй нарийн нийлмэл үйл ажиллагааны цогц байдаг. Програм хангамж нь хэрэглэгчийн гар дээр очсон цагаасаа эхлэн тодорхой хугацаанд засвар үйлчилгээг шаарддаг. Гэтэл тухайн програмыг зохиосон програм зохиогч ажлаасаа хэдийн гараад явчихсан байх нь түгээмэл үзэгдэл юм. Ялангуяа Объект Хандлагат Технологи нь хийсвэрлэлтийг илүү сонгодог утгаар нь хэрэгжүүлдэг учраас хүчирхэг технологи болж чадсан гэхэд хилсдэхгүй. Учир нь уламжлалт буюу бүтэцлэгдсэн аргаар систем хөгжүүлэхэд програмын код нь өгөгдлөө удирддаг учраас програмын гол цөм гэж үзэн програмын функцэд илүү ач холбогдол үзүүлж ирсэн. Харин Объект Хандлагат аргаар систем хөгжүүлэхэд эсрэгээр өгөгдөл нь функцээ удирддаг гэж үздэг.ОХПрограмчлалын хэлнүүд нь өгөгдлийн хүчирхэг хийсвэрлэлтийг ашигладаг. Өгөгдлийн хийсвэрлэл (Data abstraction) 18. Хийсвэрлэл (Abstraction) Аливаа програмчлалын хэл нь өгөгдөл болон түүнийг боловсруулах функцээс бүрддэг. Процедур хандлагат програмчлалын хэлнүүд функцэд суурилсан байдаг бол Java, C++ гэх мэт хэлнүүд нь өгөгдлийн хийсвэрлэл буюу объектод тулгуурласан тул тэдгээрийг Объект Хандлагат Програмчлалын хэл гэдэг. Хийсвэрлэл нь “ ямар нэгэн зүйл ” -ийг тодорхой шинж чанараар нь бүлэглэн, хэрэггүй хэсгээс нь тусгаарлах үйл явц юм. Бүтэцлэгдсэн програмчлалд хийсвэрлэлийг хэрэгжүүлэх гол хэсэг нь функц байсан. Харин ОХПрограмчлалд классд өгөгдөл болон функцуудыг нэгтгэн далдлаж өгсөнөөр Өгөгдлийн Хийсвэр Төрөл ( ӨХТ ) тодорхойлж, ашиглах замаар хийсвэрлэлийг хэрэгжүүлдэг. Програмчлалын хэл бүр өөрийн гэсэн Өгөгдлийн Хийсвэр Төрөл ( ӨХТ ) -тэй. Тухайлбал: Паскаль хэлний ӨХТ нь Бичлэг (record) С хэлний ӨХТ нь Бүтэц (struct) Java болон бусад ОХПрограмчлалын хэлний хувьд ӨХТ нь класс ( class) юм. Хийсвэрлэл Generalization – ижил төстэй шинж чанраар нь бүлэглэн ерөнхийлөх Extensibility -Өргөтгөх буюу удамшуулах Flexibility – кодын өөрчлөлт болон шинэ онцлогийг хялбархан оруулах боломж Өгөгдлийн хийсвэрлэл (Data abstraction) 19. Өгөгдлийн хийсвэрлэл (Data abstraction) Generalization – ижил төстэй шинж чанараар нь бүлэглэн ерөнхийлөх Extensibility – Өргөтгөх буюу удамшуулах 3. Flexibility – кодын өөрчлөлт болон шинэ онцлогийг хялбархан оруулах боломж Гишүүн өгөгдлийг шинээр тодорхойлох 20. ОХ Технологиийн үндсэн ойлголтууд: Объект Объект: Бодит амьдралын биет юм буюу түүний хийсвэрлэл юм. Объект Бодит зүйлс. Жишээ нь: машин, камер, үүл Хийсвэр зүйлс. Жишээ нь: хичээл, шүлэг... Бодит ертөнц объектуудаас бүрддэг 21. Класс Объект хэмээх ойлголттой салшгүй холбоотой. Ижил шинж чанар, үйлдлүүдтэй бүлэг объектуудын нэгдэл юм. Объект Бид өдөр тутмынхаа амьдралд янз бүрийн объектуудтай харьцаж байдаг. Бодит амьдралын биет юмс буюу түүний хийсвэрлэл юм. Жишээ нь: Бодит объект: Ном, Үзэг, Компьютер... Хийсвэр объект: Хичээл, Шүлэг Аливаа систем нь объектуудаас бүрддэг. ОХПрограмчлалд Объект нь Шинж чанар ( өгөгдөл ) Үйлдэл ( функцууд ) -ийн нэгдэл юм. Жишээ нь: Машин Класс, объект Машин Íýð ¯íý Өнгө Давхих Õóäàëäàæ-àâàõ Çàñàõ 22. Класс Ижилхэн шинж чанар болон үйлдлүүдтэй бүлэг объектуудын нэгдэл юм. Жишээ нь. Дараах объектууд нь ижил шинж чанар болон ижил үйлдлүүдтэй тул тэдгээрийг бүлэглэн “Машин” классыг үүсгэж болно. Өөрөөр хэлбэл: ОХП-д Класс нь Өгөгдөл Үйлдлүүдээс бүрдэнэ. Класс, объект Katsra's car HONDA Ryo's car EUNOS Shuji's car SUBARU Keisuke's car DAIHATSU 23. Хийсвэрлэл (Abstraction) Хүн төрөлхтөн өөртөө хүндрэлтэй асуудлаа хийсвэрлэн дүрсэлж ирсэн бөгөөд компьютерийн програмчлалд ч програмын хүндрэл (software complexity)- ийг удирдан зохицуулах зорилгоор хийсвэрлэлийг өргөн ашигладаг. Програмын хүндрэл (software complexity) яагаад үүсч байна? Аливаа байгууллагын үйл ажиллагаанд програм хангамжийн хэрэглээ улам бүр өсч байна Хэн ч системийг бүхлээр нь ойлгохооргүй нарийн нийлмэл үйл ажиллагааны цогц байдаг. Програм хангамж нь хэрэглэгчийн гар дээр очсон цагаасаа эхлэн тодорхой хугацаанд засвар үйлчилгээг шаарддаг. Гэтэл тухайн програмыг зохиосон програм зохиогч ажлаасаа хэдийн гараад явчихсан байх нь түгээмэл үзэгдэл юм. Мөн програмын засвар үйлчилгээг хийхэд тухайн програм хангамжийн баримтжуулалт бүрэн зөв хийгдсэн байх шаардлагатай. Програмчлалд хийсвэрлэлийг хэрэгжүүлнэ гэдэг нь: Аливаа зүйлийг тодорхой шинж чанараар нь бүлэглэн тусгаарлаж буй хэрэг юм. Класс 24. Хийсвэрлэл (Abstraction) Аливаа програмчлалын хэл нь өгөгдөл болон түүнийг боловсруулах функцээс бүрддэг. Процедур хандлагат програмчлалын хэлнүүд функцэд суурилсан байдаг бол Java, C++ гэх мэт хэлнүүд нь өгөгдлийн хийсвэрлэл буюу объектод тулгуурласан тул тэдгээрийг Объект Хандлагат Програмчлалын хэл гэдэг. Програмчлалд хийсвэрлэлтийг бодит амьдралын шаардлага, хэрэглэгчийн хүсэл сонирхолд нийцүүлэн хийлгүй буруу зөрүү, дутуу дулимаг хийвэл програмын чанарт муугаар нөлөөлдөг. Програмчлалд Өгөгдлийн Хийсвэр Төрөл ( ӨХТ ) буюу Хэрэглэгчийн Тодорхойлсон Төрөл ( ХТТ ) тодорхойлж, ашиглах замаар хийсвэрлэлийг хэрэгжүүлдэг. Програмчлалын хэл бүр өөрийн гэсэн Өгөгдлийн Хийсвэр Төрөлтэй. Тухайлбал: Паскаль хэлний ӨХТ нь Бичлэг (record) С хэлний ӨХТ нь Бүтэц (struct) Java болон бусад ОХПрограмчлалын хэлний ӨХТ нь класс юм. Өгөгдлийн хийсвэрлэл & Класс 25. ОХ Технологиийн үндсэн ойлголтууд: Instantiation Katsra's car HONDA Ryo's car EUNOS Shuji's car SUBARU Keisuke's car DAIHATSU Instance 1 Баяраа HONDA Улаан Kastra Instance2 Өлзий EUNOS Хар Ryo Instance 3 Сувдаа SUBARU Цэнхэр Shuji Instance 4 Амар DAIHATSU Саарал Keisuke Классын нэр Шинж чанар ( өгөгдөл ) Үйлдэл ( функц ) Машин Эзэмшигч Төрөл Өнгө Үйлдвэрлэгч Авах Хурдлах Instance : классын нэг тохиолдол буюу объект 26. Хийсвэрлэл: Аливаа зүйлийг тодорхой шинж чанараар нь бүлэглэн ерөнхийлж буй хэрэг юм. ОХП-д хийсвэрлэлийг хэрэгжүүлэхээс гадна, тэрхүү хийсвэрлэсэн төрөлөө өргөтгөн удамшуулах боломжтой, мөн шаардлагатай кодын өөрчлөлтийг хялбархан оруулах боломжтой байдаг. Generalization – ижил төстэй шинж чанраар нь бүлэглэн ерөнхийлөх Extensibility -Өргөтгөх буюу удамшуулах Flexibility – кодын өөрчлөлт болон шинэ онцлогийг хялбархан оруулах боломж Харин объект хандлагат бус програмчлалын хэлнүүдэд хийсвэрлэсэн төрлөө өргөтгөн удамшуулах боломжгүй бөгөөд хийсвэрлэсэн төрөлдөө шаардлагатай нэмэлт өөрчлөлтийг оруулахад төвөгтэй байдаг. Иймд дараах дүгнэлтийг хийж болно. ОХТ-ийн өгөгдлийн хүчирхэг хийсвэр төрөл нь түүнийг програмчлалын хүчирхэг технологи болгож чадсан. Класс 27. Өгөгдлийн хийсвэрлэл (Data abstraction) Generalization – ижил төстэй шинж чанараар нь бүлэглэн ерөнхийлөх Extensibility – Өргөтгөх буюу удамшуулах 3. Flexibility – кодын өөрчлөлт болон шинэ онцлогийг хялбархан оруулах боломж Гишүүн өгөгдлийг шинээр тодорхойлох 28. Объектын танигдах шинж Объект бүр дахин давтагдашгүй шинж чанартай Энэ тохиолдолд ялгагдах шинж чанрыг нэмж тодорхойлох шаардлагатай. Жишээ нь Ïðîôåññîð “ Íÿìñ¿ðýí ” Ìàòåìàòèê çààäàã Ïðîôåññîð “ Íÿìñ¿ðýí ” Ìàòåìàòèê çààäàã Ïðîôåññîð “ Íÿìñ¿ðýí ” Ìàòåìàòèê çààäàã 29. ОХ Технологиийн үндсэн ойлголтууд: Объект Объект хандлагат програмчлалд Объект нь шинж чанар ( өгөгдөл ) үйлдэл ( функцууд ) -ээс тогтоно. ЖИШЭЭ: Ñèñòåì íü îáúåêòóóäààñ á¿ðäýíý - Îáúåêò á¿ð ºãºãäºë áà ôóíêöóóäýýñ á¿ðäýíý - Òóõàéí îáúåêò äàõü ºãºãäºë áîëîí ôóíêöóóä íü õîîðîíäîî ñàëøã¿é õîëáîîòîé Ãàð óòàñ Íýð ¯íý Õýðýãëýõ Õóäàëäàæ-àâàõ Çàñàõ Îáúåêòûí íýð ªãºãäºë Ôóíêö 30. ОХПрограмчлалын гол онцлог Structured technology Бүтэцлэгдсэн технологи Object oriented technology Объект хандлагат технологи хүчирхэг Data Abstraction Илүү хүчирхэг өгөгдлийн хийсвэрлэлийг ашиглах болсон нь ОХТ-ийг хүчирхэг болгож чадсан. 31. Класс ( ойлголт сэргээх ) Класс Хичээл Өгөгдлүүд -Хичээлийн нэр -Хичээлийн код -Кредит -Заах багш -7 хоногт орох цаг Үйлдлүүд -Оюутан бүртгэх -Шалгалт авах -Даалгавар шалгах Class : Ижил шинж чанар болон үйлдлүүдтэй бүлэг объектуудын нэгдэл юм. Өөрөөр хэлбэл: ОХП-д Класс нь өгөгдөл үйлдлүүдээс бүрдэнэ. a + b = 10 32. ОХ Технологиийн үндсэн ойлголтууд: Instantation Katsra's car HONDA Ryo's car EUNOS Shuji's car SUBARU Keisuke's car DAIHATSU Тохиолдол1 Баяраа HONDA Улаан Kastra Тохиолдол 2 Өлзий EUNOS Хар Ryo Тохиолдол 3 Сувдаа SUBARU Цэнхэр Shuji Тохиолдол 4 Амар DAIHATSU Саарал Keisuke Классын нэр Шинж чанар ( өгөгдөл ) Үйлдэл ( функц ) Машин Эзэмшигч Төрөл Өнгө Үйлдвэрлэгч Авах Хурдлах Instantiation : классын нэг тохиолдол буюу объект 33. Объектын танигдах шинж Объект бүр дахин давтагдашгүй шинж чанартай Энэ тохиолдолд ялгагдах шинж чанрыг нэмж тодорхойлох шаардлагатай. Жишээ нь Ïðîôåññîð “ Íÿìñ¿ðýí ” Ìàòåìàòèê çààäàã Ïðîôåññîð “ Íÿìñ¿ðýí ” Ìàòåìàòèê çààäàã Ïðîôåññîð “ Íÿìñ¿ðýí ” Ìàòåìàòèê çààäàã Editor's Notes #7: Учир нь Java хөрвүүлэгч (Java compiler) нь Java дээр бичсэн анхдагч эх код (Source program)-ийг Java байт-код руу хөрвүүлэх бөгөөд үр дүнд нь class өргөтгөлтэй файл үүснэ. Манай жишээний хувьд hello.class файл үүснэ. #14: Учир нь аливаа програмын үндсэн код болох main аргыг далдлах шаардлагагүй байдаг.