ОХТ нэр томъёонууд
•Обьект
Объект гэдэг бол бодит-амьдарлын
биет юм буюу т ний хийсвэрлэл.үү
Класс
Класс нь г гдлийн хийсвэр т р лө ө ө ө
б г д р р хэлбэл класс ньө өө өө өө
хэрэглэгчийн тодорхойлсон т р лө ө юм.
7.
Объект/Класс
• Ер нхийклассө
(parameterized class, template)
– Нэг буюу олон формал параметертэй класс
– Параметер
• Т р лө ө
• Хувьсагч болон т р лө ө
– Параметерийн жагсаалт нь хоосон бйж
болохг йү
– Ер нхий классыг хэрэглэхдээ формалө
параметерийг жинхэнэ параметертэй холбох
ёстой
Объект/Класс
• Java Класс
–Тодорхойлолт болон хэрэгж лэлтиийгүү
салгаддагг йү
– Класс нь з вх н рийн багц дотроо танилө ө өө
– г й болҮ ү public зарлах
• public class Zaehler { }
12.
Объект/Класс
• Java объект:
–Объект нь з вх н динамикаарө ө (as heap variable
) снэүү
– Санах ой нь garbage collector-оор рөө өө
ч л л гд нө өө ө ө ө
Counter aCounter;
// Объект - Хувьсагч
aCounter = new Counter();
– Объектын заалт снэүү
13.
C++ Загвар функц
Загварфункцийн зарлалтын хэлбэр нь:
Template< параметр_жагсаалт >< буцаах_утга >< функц_нэр >
(< аргумент_жагсаалт >)
{f
< функцийн утга >
}
Жишээлбэл: хоёр обьектын ( хувьсагчийн ) утгыг солих загвар
функцийн
зарлалт нь:
Template< class T > void swap ( T & left , T & right )
{
T temp = left;
Left = right;
Right = temp;
}
Объект/Класс
• Java-гийн ернхий класс:ө
– Ойлголтыг хэрэгж лээг йүү ү
– Гэхдээ:
– Т р л б рд зориулагдсан рийнө ө ү өө Container-
класс х гж лэх шаардлагг й, учир нь б хө үү ү ү
класс нь цаанаа Object-ээс удамшдаг
• Queue класс сгэнэ, тэр ньүү Object эсвэл т ний дэдүү
классыг захирдаг
• Объектын т рлийг хандсаны дараа засварлахынө
тулд т р л хувиргагчө ө (type casts) шаардлагатай
16.
Объект/Класс
• Java-гийн интерфейс:
–Тогтмол болон хийсвэр йлдл дийг агуулжү үү
болно
– interface гэсэн т лх р гээр зарлагддагү үү ү
– Классууд implements гэсэн т лх р гийг хэрэглэжү үү ү
хэрэгж лдэгүү
– Б б ббөө ө ө
– бб б б б бӨ ө өөө ө ө
– б б б бӨ ө ө ө
17.
Шинж
• Харагдац
– Шинжилгээ
•Шинж д нь классаас гадагш нууц, гэсэн ч рийнүү өө
дэд класстаа харагдана (protected)
– Зохиомж
• Харагдацийг ялгана (visibility)
– public (бусад б х класстү )
– protected (класс дотроо м н дэд классуудадө )
– private (з вх н класс дотрооө ө )
auto болон staticхувьсагчид
#include<iostream.h>
void count (void);
void main () {
cout << “main () функцийн эхлэл... n “;
count ();
count ();
count ();
count ();
count ();
cout << “main () функц дуусав. n”;
}
void count (void) {
int au=1; // С++ нь функц ажиллах б рт 1 гэсэн утга олгоно.ү
static int st=1; // С++ нь эхний удаа л 1 гэсэн утга олгоно.
cout << “count () дуудагдахад au=”<<au<<”st “ << st <<’n’;
st++;
au++;
}
23.
йлдэлҮ
• Харагдвар
– private– з вх н ижил классын йлдэлээрө ө ү
дуудагдана
– protected - рийн классын болон т ний дэдөө үү
классын йлдлээр дуудагданаү
– public – б х класс юмуу эсвэл т нийү үү
объектуудаар дуудагдана
24.
йлдэлҮ
• йлдлийн хэрэгжлэлтҮ үү
– Тухайн программчлалын хэлэнд Ярианы
хэлний тайлбар рг тг л.ө ө ө
– Шаардлагатай бол мн х болон дараахө ө
н хц лийн тайлбарө ө
• мн х н хц лӨ ө ө ө (precondition)
– йлдэл идэвхжихээс мн биелэсэн байх ёстой н хц лҮ ө ө ө ө
• Дараах н хц лө ө (postcondition)
– йлдэлийн н л г р гарсан рчл лтийн тайлбарҮ ө өө өө өө ө
25.
йлдэлҮ
• Хийсвэр йлдэлү
–З вх н сигнатураас б тнэө ө ү
• йлдлийн нэрҮ
• Б х параметерийн нэр болон т рл дү ө үү
• Буцаах утгын ( р д нү ү ) т р лө ө
– Хэрэгж лэлт байхг йүү ү
– Дэд классуудын ер нхий интерфайсийгө
тодорхойлдог
26.
йлдэлҮ
• UML сигнатуртэмдэглэгээ
– йлдлийн харагдацҮ
(параметерийн жагсаалт): р д нгийн т р лү ү ө ө
{онцлог1, онцлог2, ...}
– Харагдац [+ | # | - ]
– Параметрийн жагсаалт
Т рлийн нэр: Т р лө ө ө = анхны утга, ...,
• Т р лө ө = [in | out | inout ]
– р д нҮ ү
• йлдэл нь утга буцаахг й бол орхиж болноҮ ү