SlideShare a Scribd company logo
1 of 37
Object Oriented
Programming

Logo

Java Applet –ийн хэрэглээ
Багш Б.Ганзориг

Улаанбаатар их сургууль
2013 он
Logo

Агуулга
1

Аплет

2

Exception handling

3

Stack trace

4

Шинэ үгс

5

Даалгавар

6

Шинэ үгс

Объект хандлагат програмчлал

Улаанбаатар Их Сургууль 2013 он
Logo

Аплет
Аплет нь вэб дээр ажилдаг класс код
юм.
Аплет ашиглан вэб дээр тоглоом
хийх, хэрэглэгчээс мэдээлэл
авах, зураг зурах, график дүрслэлийг
илүү сайжруулж болдог.

Объект хандлагат програмчлал

Улаанбаатар Их Сургууль 2013 он
Logo

Аплет

Аплетийг
 Web browser дээр үзэх
 Applet viewer програм ашиглан үзэх
боломжтой.

Ихэвчлэн applet viewer ашиглан
аплетаа шалгасны дараа вэб
хуудсандаа нэмдэг.
Объект хандлагат програмчлал

Улаанбаатар Их Сургууль 2013 он
Logo

Аплет (жишээ1)

Объект хандлагат програмчлал

Улаанбаатар Их Сургууль 2013 он
Logo

Аплет (жишээ2)

Объект хандлагат програмчлал

Улаанбаатар Их Сургууль 2013 он
Logo
Аплет (жишээ3)

Объект хандлагат програмчлал

Улаанбаатар Их Сургууль 2013 он
Logo
Аплет (жишээ код)

Бүх аплетад Paint функц
автоматаар дуудагддаг.
Энэ нь аплетийн үйл
ажиллагааг эхлүүлэх
функц юм.

Объект хандлагат програмчлал

Улаанбаатар Их Сургууль 2013 он
Logo
Аплет (жишээ тайлбар)

JApplet класст аплетад хэрэгтэй
функцүүд тодорхойлогдсон байдаг.
JApplet классыг ашиглалгүйгээр
тухайн классын функцүүдийг өөрөө
програмчилвал маш их цаг хугацаа
зарцуулна.
Аплет хийхэд 200 гаруй функц бичих
хэрэгтэй болно.

Объект хандлагат програмчлал

Улаанбаатар Их Сургууль 2013 он
Logo
Аплет (жишээ тайлбар)

Аплет бичихийн тулд эдгээрийг
бүгдийг нь мэдэх албагүй.
Тэгснээс бэлэн JApplet классыг
удамшуулан бүх функцийг нь
хүлээн аваад хэрэгтэй функцээ
дахин тодорхойлох замаар
ашигладаг.

Объект хандлагат програмчлал

Улаанбаатар Их Сургууль 2013 он
Logo
Аплет (жишээ тайлбар)
8

public class WelcomeApplet extends JApplet {

 WelcomeApplet классын зарлалт:
• appletviewer эсвэл броузер нь
WelcomeApplet классын обьектийг
үүсгэж ачаалдаг.
– Public түлхүүр үг шаардлагатай.
– Нэг файл дотор нэг л public класс байна.
– public классын нэр нь файлын нэртэй
тохирох ѐстой.
Объект хандлагат програмчлал

Улаанбаатар Их Сургууль 2013 он
Logo
Аплет (жишээ тайлбар)
11

public void paint( Graphics g )

 Манай класс JApplet классын paint
функцийг удамшуулж авна.
• Энэ функц нь хоосон байдаг.
• Хоосон кодыг нь бид хэрэгтэй код
бүхий функцээр дахин тодорхойлно
(override).

Объект хандлагат програмчлал

Улаанбаатар Их Сургууль 2013 он
Logo
Аплет (жишээ тайлбар)
11

public void paint( Graphics g )

 Аплетийн paint, init, болон start функцүүд
• Аплет ажиллахад автоматаар дуудагддаг.
• JApplet классыг удамшуулж авсан класст эдгээр
функцийн кодгүй хувилбар удамшин ирдэг.
– Free versions have empty body (do nothing)
– Бүх аплетад энэ гурван функц байх шаардлаггүй.
» Хэрэгтэйгээ дахин тодорхойлж ашиглана.

 Paint функц дуудагдсанаар аплет зурагдаж
эхэлдэг.
Объект хандлагат програмчлал

Улаанбаатар Их Сургууль 2013 он
Logo
Аплет (жишээ тайлбар)
14

super.paint( g );

 JApplet эх класын paint функцийг дуудаж байна.
 Аплет бүрийн эхний мөрөнд энэ мөр байх ѐстой.
17

g.drawString( "Welcome to Java Programming!", 25, 25 );

 Paint функцийн бие хэсэгт:
• drawString функц (Graphics классын)
• Graphics классын g обьектоор дамжуулж дуудагдана.
• Аргументууд:
– Эхний аргумент: зурах тэмдэгт мөр
– дараачийн: x координатын (цэгээр) байрлал
– гуравдахь: y координатын (цэгээр) байрлал

 Java координатын систем:
• Цэгээр хэмжигдэнэ.
• Зүүн дээд булангийн координат нь: (0,0)
Объект хандлагат програмчлал

Улаанбаатар Их Сургууль 2013 он
Logo
Аплет (жишээ тайлбар)

Ажиллуулах:
Компиляци хийх:
javac WelcomeApplet.java
Хэрвээ алдаа гарахгүй бол байт код нь
WelcomeApplet.class файлд хадгалагдана.

HTML файл үүсгэнэ.
Аплетаа appletviewer эсвэл вэб броузераар
дуудна.
.htm эсвэл .html өргөтгөлтэй байна.

Аплетийг ажиллуулах:
Ямар аплет дуудахыг заасан HTML файл
үүсгэн вэб дээр харна.
Объект хандлагат програмчлал

Улаанбаатар Их Сургууль 2013 он
Logo
Аплет (жишээ тайлбар)
1
2
3
4

<html>
<applet code = "WelcomeApplet.class" width = "300"
height = "45">
</applet>
</html>

 Жирийн HTML файл (WelcomeApplet.html)
• Ихэвчлэн .class файлтай хамт нэг хавтаст байрладаг.
• .class файл нь компиляци хийсний дараа үүсдэг.

 HTML кодууд (tag)
• Ихэвчлэн хос хосоороо бичигддэг.
• < тэмдэгтээр эхэлж > тэмдэгтээр төгсөнө.

 2-р мөрт <applet> таг эхэлж байна:
• Аплетийн кодыг зааж өгнө.
• Аплетийн зурагдах хэмжээг цэгээр зааж өгдөг.
Объект хандлагат програмчлал

Улаанбаатар Их Сургууль 2013 он
Logo
Аплет (жишээ2)

Хоѐр жишээ үзье:
 Эхнийх нь:
• Хоѐр мөр текст үзүүлэх аплет.
• drawString функцийг хоѐр удаа ашиглана.

 Хоѐрдахь нь:
• g.drawLine(x1, y1, x2, y2 ) функц нь:
– (x1, y1) цэгээс (x2, y2) цэг рүү шулуун зурна.
– (0, 0) цэг нь зүүн дээд булан гэдгийг санаарай.

• drawLine функцийг ашиглан текстийн
дээгүүр, доогуур зураас татах.

Объект хандлагат програмчлал

Улаанбаатар Их Сургууль 2013 он
Logo
Аплет (жишээ 2.1)

Объект хандлагат програмчлал

Улаанбаатар Их Сургууль 2013 он
Logo
Аплет (жишээ 2.1)
1
2
3
4

<html>
<applet code = "WelcomeApplet2.class"
width = "300" height = "60">
</applet>
</html>

Объект хандлагат програмчлал

Улаанбаатар Их Сургууль 2013 он
Logo
Аплет (жишээ 2.2)

Объект хандлагат програмчлал

Улаанбаатар Их Сургууль 2013 он
Logo
Аплет (жишээ 2.3)

Хоѐр тоо нэмэх апплет:
 Бутархай тоонуудыг нэмнэ.

Объект хандлагат програмчлал

Улаанбаатар Их Сургууль 2013 он
Logo
Аплет (жишээ 2.3)

Объект хандлагат програмчлал

Улаанбаатар Их Сургууль 2013 он
Logo
Аплет (жишээ 2.3) үргэлжлэл

1
2
3
4

<html>
<applet code = "WelcomeApplet2.class“ width = "300" height = "60">
</applet>
</html>

Объект хандлагат програмчлал

Улаанбаатар Их Сургууль 2013 он
Logo
Аплет (жишээ 2.3)

Объект хандлагат програмчлал

Улаанбаатар Их Сургууль 2013 он
Logo
Аплет (жишээ 2.3) тайлбар
12

public void init()

 Init функц
• Аплет классын өгөгдлүүдэд анхны утгыг
олгодог.
• Аплет ачаалагдахад хамгийн түрүүнд
дуудагддаг.
• Утга олгох үйлдэл хийдэг учраас утга
буцаадаггүй (void)

Объект хандлагат програмчлал

Улаанбаатар Их Сургууль 2013 он
Logo
Аплет (жишээ 2.3) тайлбар
14
15
16
17
18

String firstNumber;
String secondNumber;

// first string entered by user
// second string entered by user

double number1;
double number2;

// first number to add
// second number to add

 Хувьсагчдыг зарлаж байна.
 Хоѐр төрлийн хувьсагч байдаг:
• Reference хувьсагч:
– Обьект юм
» Обьектууд нь классыг ашиглан зарлагдана.
» Олон өгөгдөл, функц агуулах чадвартай.
– Paint функц нь Graphics классын g обьектийг
хүлээн авна.
– Graphics классын функцүүдийг дуудах зорилгоор
ашиглагддаг.

• Primitive хувьсагч (хувьсагч гэдэг)
– Нэг өгөгдөл агуулдаг.

Объект хандлагат програмчлал

Улаанбаатар Их Сургууль 2013 он
Logo
Аплет (жишээ 2.3) тайлбар
14
15
16
17
18

String firstNumber;
String secondNumber;

// first string entered by user
// second string entered by user

double number1;
double number2;

// first number to add
// second number to add

 reference болон хувьсагчдыг ялгах
• Хэрэв төрөл нь класс бол reference юм.
– String бол класс
– firstNumber, secondNumber нар нь reference.

• Хэрэв төрөл нь өгөгдлийн үндсэн төрөл
байвал хувьсагч гэж ойлгоно.
– double бол үндсэн төрөл.
– number1, number2 нар нь хувьсагч.

Объект хандлагат програмчлал

Улаанбаатар Их Сургууль 2013 он
Logo
Аплет (жишээ 2.3) тайлбар
29
30

number1 = Double.parseDouble( firstNumber );
number2 = Double.parseDouble( secondNumber );

 Double.parseDouble статик функц:
• String аргументийг double рүү
хөрвүүлнэ.
• double утга буцаана.
• Статик функцийн хэлбэр нь :
– ClassName.methodName( arguments )
Объект хандлагат програмчлал

Улаанбаатар Их Сургууль 2013 он
Logo
Аплет (жишээ 2.3) тайлбар
45

g.drawRect( 15, 10, 270, 20 );

 drawRect( x1, y1, width, height )
фунц:
• (x1, y1) координаттай цэгээс width өргөнтэй height
урттай тэгш өнцөгт зурна.
• 45-р мөрт (15 , 10) цэгээс 270 өргөнтэй 20 өндөртэй
тэгш өнцөгт зурах код байна.

Объект хандлагат програмчлал

Улаанбаатар Их Сургууль 2013 он
Logo
Аплет (жишээ 3)

Дараах аплетийн кодыг бичье:

Объект хандлагат програмчлал

Улаанбаатар Их Сургууль 2013 он
Logo
Аплет (жишээ 3)

Объект хандлагат програмчлал

Улаанбаатар Их Сургууль 2013 он
Logo
Аплет (жишээ 4)

Дараах аплетийн кодыг бичье:

Объект хандлагат програмчлал

Улаанбаатар Их Сургууль 2013 он
Logo
Аплет (жишээ 4)

Объект хандлагат програмчлал

Улаанбаатар Их Сургууль 2013 он
Logo
Даалгавар
 Java аплет ашиглан дараах програмыг хийнэ:
 Цэг эх классаас шулуун, эллипс, тэгш өнцөгт классууд
удамшина.
 Эллипс ээс тойрог
 Тэгш өнцөгтөөс квадрат

 Дүрс бүр өнгө болон бусад шаардлагатай
хувьсагчид болон зурах, өнгө солих, координат
солих, арилгах зэрэг хэрэгтэй функцүүдээр
хангагдсан байна.
 Байгуулагч болон устгагч функцүүдийг хийж өгөхөөс
гадна, public, private, protected хувьсагчдыг
хэрэглэнэ.
 Төгсгөлгүй давталт ашиглан програмыг
үргэлжлүүлэн ажиллуулсаар байх ба -1 утга өгөхөд
програмыг дуусгана.
Объект хандлагат програмчлал

Улаанбаатар Их Сургууль 2013 он
Logo
Даалгавар
Програмын удирдлага:










1: Бүх обьектуудын өгөгдлийг хэвлэнэ.
2: шулуун зурна.
3: тойрог зурна.
4: тэгш өнцөгт зурна.
5: эллипс зурна.
6: кв зурна.
7: утга оруулж дүрсийг арилгана.
8: зурах өнгийг сонгоно.
-1: програмаас гарна.

Хугацаа 2 долоо хоног.
Объект хандлагат програмчлал

Улаанбаатар Их Сургууль 2013 он
Logo
Шинэ үгс
 Abstract class: Хийсвэр класс. Функцүүд нь кодгүй
байна. Удамшсан классуудад нь ямар функц заавал
байх ѐстойг зааж өгдөг.
 Abstract method: Абстракт класс дотор байх функцийн
тодорхойлолт. Энэ функц нь кодгүй байдаг бөгөөд
абстракт классаас удамшсан класс нь түүнийг абстракт
функцүүдийг дахин тодорхойлох ѐстой.
 implementation: Код бичих процессийг implementation
гэдэг.
 protected:
Уг классын болон түүнээс удамшсан
бусад классын функцүүдээс хандаж болох хувьсагч
болон функц.
 Garbage collection: Java нь ашиглагдахгүй болсон
обьектуудыг санах ойгоос олж түүний finalize функцийг
дуудан уг обьектийг санах ойгоос чөлөөлдөг. Энэ
процессийг хог цуглуулалт буюу garbage collection гэдэг.
Объект хандлагат програмчлал

Улаанбаатар Их Сургууль 2013 он
Object Oriented
Programming

Logo

Улаанбаатар их сургууль
2013 он

More Related Content

Viewers also liked

Primary Progressive Multiple Sclerosis - Case study 34
Primary Progressive Multiple Sclerosis -  Case study 34Primary Progressive Multiple Sclerosis -  Case study 34
Primary Progressive Multiple Sclerosis - Case study 34Multiple Sclerosis Treatment
 
पिम के देश विदेश के अनुभव
पिम के देश विदेश के अनुभवपिम के देश विदेश के अनुभव
पिम के देश विदेश के अनुभवPhanish Sinha
 
Secure Mining of Association Rules in Horizontally Distributed Databases
Secure Mining of Association Rules in Horizontally Distributed DatabasesSecure Mining of Association Rules in Horizontally Distributed Databases
Secure Mining of Association Rules in Horizontally Distributed DatabasesIJSRD
 
Canavis d9 jhonathan charry
Canavis d9 jhonathan charryCanavis d9 jhonathan charry
Canavis d9 jhonathan charryJhonatan Charry
 
Avon brochure
Avon brochureAvon brochure
Avon brochureLu Rg
 
Secondary Progressive Multiple Sclerosis - Case study
Secondary Progressive Multiple Sclerosis - Case study Secondary Progressive Multiple Sclerosis - Case study
Secondary Progressive Multiple Sclerosis - Case study Multiple Sclerosis Treatment
 
CaseStudy_ArnaudCayrafourcq_230615
CaseStudy_ArnaudCayrafourcq_230615CaseStudy_ArnaudCayrafourcq_230615
CaseStudy_ArnaudCayrafourcq_230615Arnaud Cayrafourcq
 

Viewers also liked (12)

Primary Progressive Multiple Sclerosis - Case study 34
Primary Progressive Multiple Sclerosis -  Case study 34Primary Progressive Multiple Sclerosis -  Case study 34
Primary Progressive Multiple Sclerosis - Case study 34
 
पिम के देश विदेश के अनुभव
पिम के देश विदेश के अनुभवपिम के देश विदेश के अनुभव
पिम के देश विदेश के अनुभव
 
Secure Mining of Association Rules in Horizontally Distributed Databases
Secure Mining of Association Rules in Horizontally Distributed DatabasesSecure Mining of Association Rules in Horizontally Distributed Databases
Secure Mining of Association Rules in Horizontally Distributed Databases
 
Lindiscape
LindiscapeLindiscape
Lindiscape
 
Ramesh_ Test_cust
Ramesh_ Test_custRamesh_ Test_cust
Ramesh_ Test_cust
 
Canavis d9 jhonathan charry
Canavis d9 jhonathan charryCanavis d9 jhonathan charry
Canavis d9 jhonathan charry
 
Portfolio smolinska
Portfolio smolinskaPortfolio smolinska
Portfolio smolinska
 
#4TheHealthOfIt
#4TheHealthOfIt#4TheHealthOfIt
#4TheHealthOfIt
 
Avon brochure
Avon brochureAvon brochure
Avon brochure
 
Secondary Progressive Multiple Sclerosis - Case study
Secondary Progressive Multiple Sclerosis - Case study Secondary Progressive Multiple Sclerosis - Case study
Secondary Progressive Multiple Sclerosis - Case study
 
CaseStudy_ArnaudCayrafourcq_230615
CaseStudy_ArnaudCayrafourcq_230615CaseStudy_ArnaudCayrafourcq_230615
CaseStudy_ArnaudCayrafourcq_230615
 
Sample module plan
Sample module planSample module plan
Sample module plan
 

Similar to Lecture10 (20)

PL Lecture3
PL Lecture3PL Lecture3
PL Lecture3
 
Lecture3 4
Lecture3 4Lecture3 4
Lecture3 4
 
Pl lecture3
Pl lecture3Pl lecture3
Pl lecture3
 
Pl lecture7
Pl lecture7Pl lecture7
Pl lecture7
 
PL Lecture1
PL Lecture1PL Lecture1
PL Lecture1
 
Lecture5 6
Lecture5 6Lecture5 6
Lecture5 6
 
PL Lecture4
PL Lecture4PL Lecture4
PL Lecture4
 
Pl lecture5
Pl lecture5Pl lecture5
Pl lecture5
 
Pl lecture6
Pl lecture6Pl lecture6
Pl lecture6
 
PL Lecture2
PL Lecture2PL Lecture2
PL Lecture2
 
Java lecture4
Java lecture4Java lecture4
Java lecture4
 
Java lecture4
Java lecture4Java lecture4
Java lecture4
 
C++
C++C++
C++
 
Pl lecture2
Pl lecture2Pl lecture2
Pl lecture2
 
Lab1
Lab1Lab1
Lab1
 
Pl lecture4
Pl lecture4Pl lecture4
Pl lecture4
 
Pl lecture1
Pl lecture1Pl lecture1
Pl lecture1
 
C cons
C consC cons
C cons
 
Sw203 Lecture4 Class Object
Sw203 Lecture4  Class ObjectSw203 Lecture4  Class Object
Sw203 Lecture4 Class Object
 
u.cs101 "Алгоритм ба програмчлал" Лекц №4
u.cs101 "Алгоритм ба програмчлал" Лекц №4u.cs101 "Алгоритм ба програмчлал" Лекц №4
u.cs101 "Алгоритм ба програмчлал" Лекц №4
 

More from ganzorigb

Lecture network programming
Lecture network programmingLecture network programming
Lecture network programmingganzorigb
 
Lecture tread
Lecture treadLecture tread
Lecture treadganzorigb
 
Lecture file man prog
Lecture file man progLecture file man prog
Lecture file man progganzorigb
 
Lecture file and folder working
Lecture file and folder workingLecture file and folder working
Lecture file and folder workingganzorigb
 
Lecture data base programming part3
Lecture data base programming part3Lecture data base programming part3
Lecture data base programming part3ganzorigb
 
Lecture data base programming part2
Lecture data base programming part2Lecture data base programming part2
Lecture data base programming part2ganzorigb
 
Lecture data base programming part1
Lecture data base programming part1Lecture data base programming part1
Lecture data base programming part1ganzorigb
 
Lecture hibernate
Lecture hibernateLecture hibernate
Lecture hibernateganzorigb
 
Lekts presentation10
Lekts presentation10Lekts presentation10
Lekts presentation10ganzorigb
 
Lekts presentation12
Lekts presentation12Lekts presentation12
Lekts presentation12ganzorigb
 
Lekts presentation9
Lekts presentation9Lekts presentation9
Lekts presentation9ganzorigb
 

More from ganzorigb (18)

Lecture 1 2
Lecture 1 2Lecture 1 2
Lecture 1 2
 
Pl lecture8
Pl lecture8Pl lecture8
Pl lecture8
 
Pl lecture8
Pl lecture8Pl lecture8
Pl lecture8
 
Lecture network programming
Lecture network programmingLecture network programming
Lecture network programming
 
Lecture tread
Lecture treadLecture tread
Lecture tread
 
Lecture file man prog
Lecture file man progLecture file man prog
Lecture file man prog
 
Lecture file and folder working
Lecture file and folder workingLecture file and folder working
Lecture file and folder working
 
Lecture data base programming part3
Lecture data base programming part3Lecture data base programming part3
Lecture data base programming part3
 
Lecture data base programming part2
Lecture data base programming part2Lecture data base programming part2
Lecture data base programming part2
 
Lecture data base programming part1
Lecture data base programming part1Lecture data base programming part1
Lecture data base programming part1
 
Lecture hibernate
Lecture hibernateLecture hibernate
Lecture hibernate
 
Lec04
Lec04Lec04
Lec04
 
Lec03
Lec03Lec03
Lec03
 
Lecture2
Lecture2Lecture2
Lecture2
 
Lecture1
Lecture1Lecture1
Lecture1
 
Lekts presentation10
Lekts presentation10Lekts presentation10
Lekts presentation10
 
Lekts presentation12
Lekts presentation12Lekts presentation12
Lekts presentation12
 
Lekts presentation9
Lekts presentation9Lekts presentation9
Lekts presentation9
 

Lecture10

  • 1. Object Oriented Programming Logo Java Applet –ийн хэрэглээ Багш Б.Ганзориг Улаанбаатар их сургууль 2013 он
  • 2. Logo Агуулга 1 Аплет 2 Exception handling 3 Stack trace 4 Шинэ үгс 5 Даалгавар 6 Шинэ үгс Объект хандлагат програмчлал Улаанбаатар Их Сургууль 2013 он
  • 3. Logo Аплет Аплет нь вэб дээр ажилдаг класс код юм. Аплет ашиглан вэб дээр тоглоом хийх, хэрэглэгчээс мэдээлэл авах, зураг зурах, график дүрслэлийг илүү сайжруулж болдог. Объект хандлагат програмчлал Улаанбаатар Их Сургууль 2013 он
  • 4. Logo Аплет Аплетийг  Web browser дээр үзэх  Applet viewer програм ашиглан үзэх боломжтой. Ихэвчлэн applet viewer ашиглан аплетаа шалгасны дараа вэб хуудсандаа нэмдэг. Объект хандлагат програмчлал Улаанбаатар Их Сургууль 2013 он
  • 5. Logo Аплет (жишээ1) Объект хандлагат програмчлал Улаанбаатар Их Сургууль 2013 он
  • 6. Logo Аплет (жишээ2) Объект хандлагат програмчлал Улаанбаатар Их Сургууль 2013 он
  • 7. Logo Аплет (жишээ3) Объект хандлагат програмчлал Улаанбаатар Их Сургууль 2013 он
  • 8. Logo Аплет (жишээ код) Бүх аплетад Paint функц автоматаар дуудагддаг. Энэ нь аплетийн үйл ажиллагааг эхлүүлэх функц юм. Объект хандлагат програмчлал Улаанбаатар Их Сургууль 2013 он
  • 9. Logo Аплет (жишээ тайлбар) JApplet класст аплетад хэрэгтэй функцүүд тодорхойлогдсон байдаг. JApplet классыг ашиглалгүйгээр тухайн классын функцүүдийг өөрөө програмчилвал маш их цаг хугацаа зарцуулна. Аплет хийхэд 200 гаруй функц бичих хэрэгтэй болно. Объект хандлагат програмчлал Улаанбаатар Их Сургууль 2013 он
  • 10. Logo Аплет (жишээ тайлбар) Аплет бичихийн тулд эдгээрийг бүгдийг нь мэдэх албагүй. Тэгснээс бэлэн JApplet классыг удамшуулан бүх функцийг нь хүлээн аваад хэрэгтэй функцээ дахин тодорхойлох замаар ашигладаг. Объект хандлагат програмчлал Улаанбаатар Их Сургууль 2013 он
  • 11. Logo Аплет (жишээ тайлбар) 8 public class WelcomeApplet extends JApplet {  WelcomeApplet классын зарлалт: • appletviewer эсвэл броузер нь WelcomeApplet классын обьектийг үүсгэж ачаалдаг. – Public түлхүүр үг шаардлагатай. – Нэг файл дотор нэг л public класс байна. – public классын нэр нь файлын нэртэй тохирох ѐстой. Объект хандлагат програмчлал Улаанбаатар Их Сургууль 2013 он
  • 12. Logo Аплет (жишээ тайлбар) 11 public void paint( Graphics g )  Манай класс JApplet классын paint функцийг удамшуулж авна. • Энэ функц нь хоосон байдаг. • Хоосон кодыг нь бид хэрэгтэй код бүхий функцээр дахин тодорхойлно (override). Объект хандлагат програмчлал Улаанбаатар Их Сургууль 2013 он
  • 13. Logo Аплет (жишээ тайлбар) 11 public void paint( Graphics g )  Аплетийн paint, init, болон start функцүүд • Аплет ажиллахад автоматаар дуудагддаг. • JApplet классыг удамшуулж авсан класст эдгээр функцийн кодгүй хувилбар удамшин ирдэг. – Free versions have empty body (do nothing) – Бүх аплетад энэ гурван функц байх шаардлаггүй. » Хэрэгтэйгээ дахин тодорхойлж ашиглана.  Paint функц дуудагдсанаар аплет зурагдаж эхэлдэг. Объект хандлагат програмчлал Улаанбаатар Их Сургууль 2013 он
  • 14. Logo Аплет (жишээ тайлбар) 14 super.paint( g );  JApplet эх класын paint функцийг дуудаж байна.  Аплет бүрийн эхний мөрөнд энэ мөр байх ѐстой. 17 g.drawString( "Welcome to Java Programming!", 25, 25 );  Paint функцийн бие хэсэгт: • drawString функц (Graphics классын) • Graphics классын g обьектоор дамжуулж дуудагдана. • Аргументууд: – Эхний аргумент: зурах тэмдэгт мөр – дараачийн: x координатын (цэгээр) байрлал – гуравдахь: y координатын (цэгээр) байрлал  Java координатын систем: • Цэгээр хэмжигдэнэ. • Зүүн дээд булангийн координат нь: (0,0) Объект хандлагат програмчлал Улаанбаатар Их Сургууль 2013 он
  • 15. Logo Аплет (жишээ тайлбар) Ажиллуулах: Компиляци хийх: javac WelcomeApplet.java Хэрвээ алдаа гарахгүй бол байт код нь WelcomeApplet.class файлд хадгалагдана. HTML файл үүсгэнэ. Аплетаа appletviewer эсвэл вэб броузераар дуудна. .htm эсвэл .html өргөтгөлтэй байна. Аплетийг ажиллуулах: Ямар аплет дуудахыг заасан HTML файл үүсгэн вэб дээр харна. Объект хандлагат програмчлал Улаанбаатар Их Сургууль 2013 он
  • 16. Logo Аплет (жишээ тайлбар) 1 2 3 4 <html> <applet code = "WelcomeApplet.class" width = "300" height = "45"> </applet> </html>  Жирийн HTML файл (WelcomeApplet.html) • Ихэвчлэн .class файлтай хамт нэг хавтаст байрладаг. • .class файл нь компиляци хийсний дараа үүсдэг.  HTML кодууд (tag) • Ихэвчлэн хос хосоороо бичигддэг. • < тэмдэгтээр эхэлж > тэмдэгтээр төгсөнө.  2-р мөрт <applet> таг эхэлж байна: • Аплетийн кодыг зааж өгнө. • Аплетийн зурагдах хэмжээг цэгээр зааж өгдөг. Объект хандлагат програмчлал Улаанбаатар Их Сургууль 2013 он
  • 17. Logo Аплет (жишээ2) Хоѐр жишээ үзье:  Эхнийх нь: • Хоѐр мөр текст үзүүлэх аплет. • drawString функцийг хоѐр удаа ашиглана.  Хоѐрдахь нь: • g.drawLine(x1, y1, x2, y2 ) функц нь: – (x1, y1) цэгээс (x2, y2) цэг рүү шулуун зурна. – (0, 0) цэг нь зүүн дээд булан гэдгийг санаарай. • drawLine функцийг ашиглан текстийн дээгүүр, доогуур зураас татах. Объект хандлагат програмчлал Улаанбаатар Их Сургууль 2013 он
  • 18. Logo Аплет (жишээ 2.1) Объект хандлагат програмчлал Улаанбаатар Их Сургууль 2013 он
  • 19. Logo Аплет (жишээ 2.1) 1 2 3 4 <html> <applet code = "WelcomeApplet2.class" width = "300" height = "60"> </applet> </html> Объект хандлагат програмчлал Улаанбаатар Их Сургууль 2013 он
  • 20. Logo Аплет (жишээ 2.2) Объект хандлагат програмчлал Улаанбаатар Их Сургууль 2013 он
  • 21. Logo Аплет (жишээ 2.3) Хоѐр тоо нэмэх апплет:  Бутархай тоонуудыг нэмнэ. Объект хандлагат програмчлал Улаанбаатар Их Сургууль 2013 он
  • 22. Logo Аплет (жишээ 2.3) Объект хандлагат програмчлал Улаанбаатар Их Сургууль 2013 он
  • 23. Logo Аплет (жишээ 2.3) үргэлжлэл 1 2 3 4 <html> <applet code = "WelcomeApplet2.class“ width = "300" height = "60"> </applet> </html> Объект хандлагат програмчлал Улаанбаатар Их Сургууль 2013 он
  • 24. Logo Аплет (жишээ 2.3) Объект хандлагат програмчлал Улаанбаатар Их Сургууль 2013 он
  • 25. Logo Аплет (жишээ 2.3) тайлбар 12 public void init()  Init функц • Аплет классын өгөгдлүүдэд анхны утгыг олгодог. • Аплет ачаалагдахад хамгийн түрүүнд дуудагддаг. • Утга олгох үйлдэл хийдэг учраас утга буцаадаггүй (void) Объект хандлагат програмчлал Улаанбаатар Их Сургууль 2013 он
  • 26. Logo Аплет (жишээ 2.3) тайлбар 14 15 16 17 18 String firstNumber; String secondNumber; // first string entered by user // second string entered by user double number1; double number2; // first number to add // second number to add  Хувьсагчдыг зарлаж байна.  Хоѐр төрлийн хувьсагч байдаг: • Reference хувьсагч: – Обьект юм » Обьектууд нь классыг ашиглан зарлагдана. » Олон өгөгдөл, функц агуулах чадвартай. – Paint функц нь Graphics классын g обьектийг хүлээн авна. – Graphics классын функцүүдийг дуудах зорилгоор ашиглагддаг. • Primitive хувьсагч (хувьсагч гэдэг) – Нэг өгөгдөл агуулдаг. Объект хандлагат програмчлал Улаанбаатар Их Сургууль 2013 он
  • 27. Logo Аплет (жишээ 2.3) тайлбар 14 15 16 17 18 String firstNumber; String secondNumber; // first string entered by user // second string entered by user double number1; double number2; // first number to add // second number to add  reference болон хувьсагчдыг ялгах • Хэрэв төрөл нь класс бол reference юм. – String бол класс – firstNumber, secondNumber нар нь reference. • Хэрэв төрөл нь өгөгдлийн үндсэн төрөл байвал хувьсагч гэж ойлгоно. – double бол үндсэн төрөл. – number1, number2 нар нь хувьсагч. Объект хандлагат програмчлал Улаанбаатар Их Сургууль 2013 он
  • 28. Logo Аплет (жишээ 2.3) тайлбар 29 30 number1 = Double.parseDouble( firstNumber ); number2 = Double.parseDouble( secondNumber );  Double.parseDouble статик функц: • String аргументийг double рүү хөрвүүлнэ. • double утга буцаана. • Статик функцийн хэлбэр нь : – ClassName.methodName( arguments ) Объект хандлагат програмчлал Улаанбаатар Их Сургууль 2013 он
  • 29. Logo Аплет (жишээ 2.3) тайлбар 45 g.drawRect( 15, 10, 270, 20 );  drawRect( x1, y1, width, height ) фунц: • (x1, y1) координаттай цэгээс width өргөнтэй height урттай тэгш өнцөгт зурна. • 45-р мөрт (15 , 10) цэгээс 270 өргөнтэй 20 өндөртэй тэгш өнцөгт зурах код байна. Объект хандлагат програмчлал Улаанбаатар Их Сургууль 2013 он
  • 30. Logo Аплет (жишээ 3) Дараах аплетийн кодыг бичье: Объект хандлагат програмчлал Улаанбаатар Их Сургууль 2013 он
  • 31. Logo Аплет (жишээ 3) Объект хандлагат програмчлал Улаанбаатар Их Сургууль 2013 он
  • 32. Logo Аплет (жишээ 4) Дараах аплетийн кодыг бичье: Объект хандлагат програмчлал Улаанбаатар Их Сургууль 2013 он
  • 33. Logo Аплет (жишээ 4) Объект хандлагат програмчлал Улаанбаатар Их Сургууль 2013 он
  • 34. Logo Даалгавар  Java аплет ашиглан дараах програмыг хийнэ:  Цэг эх классаас шулуун, эллипс, тэгш өнцөгт классууд удамшина.  Эллипс ээс тойрог  Тэгш өнцөгтөөс квадрат  Дүрс бүр өнгө болон бусад шаардлагатай хувьсагчид болон зурах, өнгө солих, координат солих, арилгах зэрэг хэрэгтэй функцүүдээр хангагдсан байна.  Байгуулагч болон устгагч функцүүдийг хийж өгөхөөс гадна, public, private, protected хувьсагчдыг хэрэглэнэ.  Төгсгөлгүй давталт ашиглан програмыг үргэлжлүүлэн ажиллуулсаар байх ба -1 утга өгөхөд програмыг дуусгана. Объект хандлагат програмчлал Улаанбаатар Их Сургууль 2013 он
  • 35. Logo Даалгавар Програмын удирдлага:          1: Бүх обьектуудын өгөгдлийг хэвлэнэ. 2: шулуун зурна. 3: тойрог зурна. 4: тэгш өнцөгт зурна. 5: эллипс зурна. 6: кв зурна. 7: утга оруулж дүрсийг арилгана. 8: зурах өнгийг сонгоно. -1: програмаас гарна. Хугацаа 2 долоо хоног. Объект хандлагат програмчлал Улаанбаатар Их Сургууль 2013 он
  • 36. Logo Шинэ үгс  Abstract class: Хийсвэр класс. Функцүүд нь кодгүй байна. Удамшсан классуудад нь ямар функц заавал байх ѐстойг зааж өгдөг.  Abstract method: Абстракт класс дотор байх функцийн тодорхойлолт. Энэ функц нь кодгүй байдаг бөгөөд абстракт классаас удамшсан класс нь түүнийг абстракт функцүүдийг дахин тодорхойлох ѐстой.  implementation: Код бичих процессийг implementation гэдэг.  protected: Уг классын болон түүнээс удамшсан бусад классын функцүүдээс хандаж болох хувьсагч болон функц.  Garbage collection: Java нь ашиглагдахгүй болсон обьектуудыг санах ойгоос олж түүний finalize функцийг дуудан уг обьектийг санах ойгоос чөлөөлдөг. Энэ процессийг хог цуглуулалт буюу garbage collection гэдэг. Объект хандлагат програмчлал Улаанбаатар Их Сургууль 2013 он