Лекц-1

2,467 views
2,331 views

Published on

Published in: Technology, Education
0 Comments
3 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total views
2,467
On SlideShare
0
From Embeds
0
Number of Embeds
207
Actions
Shares
0
Downloads
76
Comments
0
Likes
3
Embeds 0
No embeds

No notes for slide

Лекц-1

  1. 1. Лекц №1 Жава хэлний үндэс
  2. 2. Жава хэлний тухай <ul><li>Жава хэл нь </li><ul><li>Програмчлалын дээд түвшиний хэл </li></ul><li>Зарим онцлогууд </li><ul><li>Объёкт хандалтат
  3. 3. Хялбар </li><ul><li>Заагч болон санах ойтой ажиллахаас
  4. 4. програмистийг чөлөөлсөн </li></ul><li>Платформ буюу үйлдлийн системээс хамааралгүй
  5. 5. Хэлний дүрэм нь C болон C++ хэлтэй төстэй </li></ul></ul>
  6. 6. Жава платформ гэж юу вэ? <ul><li>Жава платформ гэдэг нь </li><ul><li>Жава програмыг ажиллуулж байгаа
  7. 7. Програм хангамжийн орчныг хэлнэ </li></ul><li>Жава платформ нь 2 хэсгээс бүрдэнэ </li><ul><li>Java Virtual Machine
  8. 8. Java Application Programming Interface (API) </li></ul></ul>
  9. 9. Java Virtual Machine <ul><li>Java Virtual Machine нь </li><ul><li>Компьютерийг загварчилж хийсэн програм
  10. 10. Програмыг жинхэнэ компьютер шиг ажиллуулна
  11. 11. Платформоос үл хамаарах
  12. 12. хөрвөсөн байт кодуудыг (.class файл ) уншина
  13. 13. Windows,Linux, Mac,Solaris зэрэг
  14. 14. Янз бүрийн үйлдлийн системүүдэд зориулагдсан байдаг </li></ul></ul>
  15. 15. API <ul><li>API нь </li><ul><li>Ашиглахад бэлэн
  16. 16. Класс болон интерфэйсүүд юм
  17. 17. Эдгээр нь Санд бүлэглэгдсэн байдаг </li></ul><li>API болон JVM нь </li><ul><li>Жава програмыг
  18. 18. Техник хангамжаас тусгаарладаг </li></ul></ul>
  19. 19. Жава програм бичих алхам <ul>1. Эх кодыг <ul>.java өргөтгөлтэй текст файлд бичнэ </ul>2. javac хөрвүүлэгчээр <ul>хөрвүүлж завсрын .class өргөтгөлтэй файл үүсгэнэ <li>.class файлыг
  20. 20. Класс файл гэж нэрлэнэ
  21. 21. Энэ файл нь JVM -нд зориулагдсан
  22. 22. Bytecode гэгдэх заавруудыг агуулна </li></ul></ul>
  23. 23. Жава програм бичих алхам <ul>3. java командаар <ul><li>Үүссэн класс файлаа ажиллуулдаг </li></ul><li>JVM нь </li><ul><li>Янз бүрийн үйлдлийн системд зориулагдсан байдаг
  24. 24. Тиймээс .class файл нь хаа сайгүй ажиллах боломжтой </li></ul></ul>
  25. 25. Write once, run anywhere <ul><li>Нэг удаа бичээд </li><ul><li>Хаа сайгүй ажиллуулах боломж </li></ul></ul>
  26. 26. Жава хэлний үндэс <ul><li>Тайлбар
  27. 27. Identificator буюу нэр
  28. 28. Жава хэлний түлхүүр үгс
  29. 29. Өгөгдлийн эгэл төрлүүд
  30. 30. Хувьсагч зарлах
  31. 31. Операторууд </li></ul>
  32. 32. Тайлбар <ul><li>Тайлбар нь эх кодонд бичигдэх ба </li><ul><li>хөрвүүлэгч түүнийг үл хэрэгсэнэ </li></ul><li>3 төрлийн тайлбарыг жава програмд хэрэглэдэг
  33. 33. 1 . Нэг мөр тайлбарыг // тэмдгийн араас бичнэ </li><ul><li>// Нэг мөр тайлбар </li></ul><li>2. Олон мөр тайлбарыг /* */ тэмдэгтүүдийн хооронд бичнэ </li><ul><li>/* Энэ бол
  34. 34. олон мөр
  35. 35. тайлбар
  36. 36. */ </li></ul></ul>
  37. 37. Тайлбар <ul>3. Жава баримт нь <ul><li>HTML баримт үүсгэхэд хэрэглэгдэнэ
  38. 38. /** тэмдэгтээр эхэлж */ тэмдгээр төгсөнө </li></ul>/** Энэ нь анхны жишээ програм * @author Gary Cornell * @version 1.0 */ <li>Жава баримт нь </li><ul><li>Хувьсагч, метод, классын зарлалтын өмнө бичигддэг </li></ul></ul>
  39. 39. Мэдэгдэл <ul><li>Мэдэгдэл гэдэг нь </li><ul><li>; тэмдэгээр төгссөн
  40. 40. Нэг буюу түүнээс дээш мөр код
  41. 41. totals=a+b+c+d+e+f; </li></ul><li>Блок код нь </li><ul><li>бүлэг мэдэгдэл ба
  42. 42. { хаалтаар эхлээд
  43. 43. } хаалтаар төгсөнө
  44. 44. {
  45. 45. x=y+1;
  46. 46. y=x+1;
  47. 47. } </li></ul></ul>
  48. 48. Блок код <ul><li>Блок код нь </li><ul><li>Классын зарлалтанд ашиглагдана
  49. 49. class MyDate {
  50. 50. int date;
  51. 51. int month;
  52. 52. }
  53. 53. Нэг блок код өөр блок кодыг агуулж болно </li></ul><li>Хоосон зай нь </li><ul><li>Жава програмд хэд ч бичигдэж болно </li></ul></ul>
  54. 54. Identifiers буюу нэр <ul><li>Identifier гэдэг нь </li><ul><li>Хувьсагч,метод,класст оноож өгсөн
  55. 55. Нэр </li></ul><li>Дараах тэмдэгтүүдээр эхэлж болно </li><ul><li>Дурын үсэг
  56. 56. Доогуур зураас (_)
  57. 57. Долларын тэмдэгт ( $ ) </li></ul><li>Жишээ </li><ul><li>identifer
  58. 58. userName
  59. 59. _sysVar1
  60. 60. $change </li></ul></ul>
  61. 61. Identifiers буюу нэрс <ul><li>Identifier нь </li><ul><li>Тоогоор эхэлж болохгүй
  62. 62. Эхний тэмдэгтийн дараагаас тоо оруулж болно
  63. 63. Уртын хязгаар байхгүй
  64. 64. Том жижиг үсгийг ялгаатай тооцно
  65. 65. int x ;
  66. 66. int X ; //x-ээс ялгаатай
  67. 67. Жава хэлний түлхүүр үгс байж болохгүй
  68. 68. class for {
  69. 69. } </li></ul></ul>
  70. 70. Түлхүүр үгс <ul><li>Түлхүүр үгс нь </li><ul><li>Хөрвүүлэгчид тусгай утга илэрхийлнэ
  71. 71. Жишээ нь </li><ul><li>Өгөгдлийн төрлийн нэр болон
  72. 72. Командуудын нэрс зэргийг илэрхийлнэ </li></ul></ul></ul>
  73. 73. Түлхүүр үгс
  74. 74. Өгөгдлийн эгэл төрлүүд <ul><li>Жава нь өгөгдлийн хатуу төрөлтэй хэл </li><ul><li>Энэ нь хувьсагч болгон заавал
  75. 75. Өгөгдлийн төрөлтэй зарлагдах ёстой </li></ul><li>Жавад 8 өгөгдлийн эгэл төрөл байдаг
  76. 76. Бүхэл тоон byte,short, int, long
  77. 77. Бутархай тоон double, float
  78. 78. Логик boolean
  79. 79. Тэмдэгт char </li></ul>
  80. 80. Бүхэл тоон төрөл <ul><li>3 янзаар тооллоор бичигдэж болно </li><ul><li>Аравтын тоолол 200
  81. 81. Наймтын тоолол 0777
  82. 82. Арван зургаатын тоолол 0xBAAC </li></ul><li>Long утгыг L эсвэл l дагавартай бичнэ </li><ul><li>200L
  83. 83. 0777L
  84. 84. 0xBAACl </li></ul></ul>
  85. 85. Бутархай тоон төрөл <ul><li>Бутархай хэсэгтэй тоог </li><ul><li>бутархай тоон төрлөөр хадгална </li></ul></ul>Төрөл Хэмжээ Утгын хязгаар float 4 bytes ойролцоогоор ±3.40282347E+38F (6–7 significant decimal digits) double 8 bytes ойролцоогоор ±1.79769313486231570E+308 (15 significant decimal digits)
  86. 86. Бутархай тоон төрөл <ul><li>double төрөл нь float төрлөөсөө </li><ul><li>2 дахин илүү нарийвчлалтай </li></ul><li>float төрөл нь F дагавартай бичигдэнэ </li><ul><li>3.204F </li></ul><li>F дагаваргүй бол </li><ul><li>double төрөлтэй гэж тооцогдоно </li></ul><li>3.204 </li></ul>
  87. 87. Бутархай тоон төрөл <ul><li>Дараах байдлаар бичигдэнэ
  88. 88. Жишээ </li><ul><li>3.14 //хялбар бутархай тоо, double төрөлтэй
  89. 89. 60E23 //Их хэмжээтэй бутархай тоо
  90. 90. 2.136F //float төрөлтэй бутархай
  91. 91. 1.23D //double төрөлтэй бутархай, D -г бичихгүй байж болно </li></ul></ul>
  92. 92. boolean төрөл <ul><li>boolean төрөл нь зөвхөн </li><ul><li>true эсвэл
  93. 93. false гэсэн 2 утгын аль нэгийг авна </li></ul><li>Жишээ </li><ul><li>boolean truth=true; </li></ul></ul>
  94. 94. char төрөл <ul><li>char төрөл нь </li><ul><li>16 бит Unicode тэмдэгтийг төлөөлнө
  95. 95. ' ' дотор бичигдэх ёстой </li></ul><li>Жишээ </li><ul><li>'a' a үсэг
  96. 96. 't' Таб
  97. 97. 'u03A6' Unicode тэмдэгт </li></ul></ul>
  98. 98. Char болон boolean төрөл <ul><li>Хэмжээ </li></ul>Төрөл Хэмжээ Утгын хязгаар char 2 bytes boolean true or false
  99. 99. Literal утга <ul><li>Өгөгдлийн төрлийн эх код дахь бичиглэлийг </li><ul><li>Literal утга гэдэг </li></ul><li>Жишээ </li><ul><li>boolean result= false ;
  100. 100. char c=' C ';
  101. 101. int i= 100000 ;
  102. 102. byte b= 100 ;
  103. 103. float f= 123.4f
  104. 104. double d= 123.4 ; </li></ul></ul>
  105. 105. Literal утга <ul><li>Жава хэл нь </li><ul><li>дараах тусгай тэмдэгтүүдийг дэмждэг </li></ul><li>Үүнд
  106. 106. b backspace
  107. 107. n шинэ мөр
  108. 108. t tab
  109. 109. ” давхар хашилт
  110. 110. r enter
  111. 111. ' дан хашилт
  112. 112. гэдрэг налуу </li></ul>
  113. 113. Хувьсагч <ul><li>Хувьсагч нь өгөгдөл хадгалах арга
  114. 114. Жавад хувьсагчийг </li><ul><li>type varName
  115. 115. Хэлбэртэй зарлана </li></ul><li>Жишээ
  116. 116. double salary;
  117. 117. int vacationDays=20;
  118. 118. long earthPopulation;
  119. 119. boolean done; </li></ul>
  120. 120. Хувьсагч <ul><li>Хувьсагчийн нэр нь </li><ul><li>Identifier бичих дүрмээр бичигдэнэ </li></ul><li>Хувьсагч зарласан бол </li><ul><li>; аар төгсгөх ёстой </li></ul><li>Жавад </li><ul><li>Нэг мөрөнд олон хувьсагч зарлаж болно
  121. 121. int i,j; </li></ul><li>Хувьсагч утга оноох оператор (=) -оор </li><ul><li>Утга оноох ёстой
  122. 122. int i; //зарлах
  123. 123. i=100; //утга оноох </li></ul></ul>
  124. 124. Хувьсагч <ul><li>Жавад </li><ul><li>дурын газар
  125. 125. хувьсагч зарлаж ашиглахыг зөвшөөрдөг </li></ul><li>Жишээ
  126. 126. double salary=65000;
  127. 127. System.out.println(salary);
  128. 128. int vacationDays=2; </li></ul>
  129. 129. Жава операторууд <ul><li>Оператор нь </li><ul><li>1 буюу түүнээс дээш операндууд дээр
  130. 130. Ямар нэг үйлдэл хийж
  131. 131. Шинэ утга төрүүлнэ
  132. 132. Үр дүн нь ихэнхдээ
  133. 133. Тоон эсвэл boolean төрлийн утга байна </li></ul><li>Операнд гэж </li><ul><li>Операторын аль нэг талд байгаа
  134. 134. Хувьсагч эсвэл
  135. 135. ямар нэг утгыг хэлнэ </li></ul></ul>
  136. 136. Утга оноох оператор <ul><li>= тэмдэгт нь </li><ul><li>Баруун талд байгаа утгаа
  137. 137. Зүүн талынхаа операндад(хувьсагчид) онооно </li></ul><li>Жишээ </li><ul><li>int speed=0; //speed==0
  138. 138. int gear=1; //gear==1 </li></ul></ul>
  139. 139. Нийлмэл операторууд <ul>Операторууд Тайлбар <ul><ul><li>+= x+=10 -> x=x+10
  140. 140. -= x-=10 -> x=x-10
  141. 141. *= x*=10 -> x=x*10
  142. 142. /= x/=10 -> x=x/10 </li></ul></ul></ul>
  143. 143. Арифметик операторууд <ul><li>Жавагийн арифметик операторууд </li><ul><li>Бүгд 2 операнд авна
  144. 144. Тоон утга буцаана </li></ul><li>Оператор Тайлбар </li><ul><li>+ нэмэх
  145. 145. - хасах
  146. 146. * үржих
  147. 147. / бүхлээр хуваах
  148. 148. % хуваагаад үлдэглийг авах </li></ul></ul>
  149. 149. Арифметик операторууд <ul><li>Жишээ
  150. 150. int x=20+10;
  151. 151. int y=x-10;
  152. 152. int z=y*x; </li></ul>
  153. 153. Илэрхийлэл <ul><li>Илэрхийлэл нь </li><ul><li>Хувьсагч болон literal утга, операторууд , методын дуудалт зэргээс бүрдэх ба
  154. 154. Үнэлэгдмэгцээ 1 утга буцаадаг </li></ul><li>Жишээ
  155. 155. int cadence=0;
  156. 156. array[0]=100;
  157. 157. System.out.println(“Array element is ”+array[0]);
  158. 158. Нийлмэл илэрхийлэл
  159. 159. 1*2*3
  160. 160. (x+y)/100 </li></ul>
  161. 161. Unary операторууд <ul><li>Unary оператор нь </li><ul><li>Нэг операнд дээр үйлдэл хийнэ </li></ul><li>Оператор Тайлбар </li><ul><li>+ Тоог эерэг утгатайг заана
  162. 162. - Сөрөг утгатайг заана
  163. 163. ++ Нэгээр нэмэгдүүлнэ
  164. 164. – Нэгээр хорогдуулна
  165. 165. ! Boolean утгыг эсрэг болгоно </li></ul></ul>
  166. 166. Харьцуулах операторууд <ul><li>Харьцуулах операторууд нь </li><ul><li>Нэг операнд нь нөгөөгөөсөө
  167. 167. Их, бага, тэнцүү, тэнцүү биш зэргийг шалгана
  168. 168. boolean утга буцаана
  169. 169. Ихэвчлэх if оператортай хамт хэрэглэгдэнэ. </li></ul><li>Операторууд Тайлбар </li><ul><li>== 2 операнд тэнцүү бол true
  170. 170. != 2 операнд тэнцүү биш бол true
  171. 171. > Эхний операнд их бол true
  172. 172. < Эхний операнд бага бол true
  173. 173. утгуудыг тус тус буцаана </li></ul></ul>
  174. 174. Харьцуулах операторууд <ul><li>Операторууд Тайлбар </li><ul><li>>= Эхний операнд нь их буюу тэнцүү бол true
  175. 175. <= Эхний операнд нь бага буюу тэнцүү бол true
  176. 176. утгуудыг тус тус буцаана </li></ul></ul>
  177. 177. Нөхцөлт операторууд <ul><li>Нөхцөлт операторууд нь </li><ul><li>2 boolean утгыг үнэлнэ </li></ul><li>Операторууд Тайлбар
  178. 178. && 2 илэрхийлэл хоёул үнэн бол true </li><ul><li>|| 2 илэрхийллийн аль нэг нь үнэн бол true </li><ul><ul><ul><li>утга тус тус буцаана </li></ul></ul></ul></ul><li>Жишээ
  179. 179. if((2<3) && (3<4)){
  180. 180. }
  181. 181. boolean b= true || false ; </li></ul>
  182. 182. Ternary оператор <ul><li>?: операторыг </li><ul><li>ternary оператор гэдэг
  183. 183. Учир нь 3 операнд хэрэглэдэг
  184. 184. If-then-else -ийн товч бичиглэл юм </li></ul><li>Жишээ
  185. 185. boolean someCondition= true ;
  186. 186. int result=someCondition ? 10 : 20
  187. 187. Тайлбар
  188. 188. Нөхцөл үнэн бол result=10
  189. 189. Худал бол result=20 үйлдлийг хийнэ </li></ul>
  190. 190. Битийн операторууд <ul><li>Жава хэлэнд </li><ul><li>битийн үйлдэл хийдэг операторууд байдаг
  191. 191. Эдгээр нь тоон төрлийн операндуудтай хамт ашиглагддаг </li></ul><li>Дараах 2 янз байдаг </li><ul><li>Битийн логик оператор
  192. 192. Битээр шилжүүлэх оператор </li></ul></ul>
  193. 193. Битийн логик операторууд <ul><li>Битийн логик үйлдэл хийдэг операторууд </li><ul><li>~ битийг эсрэгээр солино
  194. 194. ^ Битийн XOR
  195. 195. & Битийн AND
  196. 196. | Битээр OR үйлдлийг тус тус хийнэ </li></ul><li>Жишээ </li><ul><li>~ 0100 1111 0010 1101
  197. 197. 1011 0000 & 0100 1111
  198. 198. 0000 1100 </li></ul></ul>
  199. 199. Битийн логик операторууд <ul><li>Жишээ
  200. 200. 0010 1101 0010 1101
  201. 201. | 0100 1111 ^ 0100 1111
  202. 202. 0110 1111 0110 0010 </li></ul>
  203. 203. Битээр шилжүүлэх операторууд <ul><li>Битээр шилжүүлэх </li><ul><li>>>,>>>,<< гэсэн 3 оператор байдаг </li></ul><li>>> </li><ul><li>Битээр баруун тийш шилжүүлнэ
  204. 204. Зүүн талд нь өгөгдөл (тоон төрөл)
  205. 205. Баруун талд нь хэдэн бит шилжүүлэхийг заасан тоо байдаг
  206. 206. 128>>1 -> 128/2 1 =64
  207. 207. 256>>4 -> 265/2 4 =16 </li></ul></ul>
  208. 208. >>> оператор <ul><li>>>> оператор нь </li><ul><li>Битээр баруун тийш шилжүүлнэ
  209. 209. Бичиглэл нь >> тэй адил
  210. 210. Хамгийн зүүн захын бит нь 0 ээр дүүргэгдэнэ </li></ul><li>Жишээ
  211. 211. 1010 0000 >> 2 -> 1110 1000
  212. 212. 1010 0000 >>> 2 -> 0010 1000 </li></ul>
  213. 213. << оператор <ul><li><< оператор нь </li><ul><li>Битээр зүүн шилжүүлнэ
  214. 214. Бичиглэл нь >> тай адил </li></ul><li>Жишээ
  215. 215. 128<<1 -> 128*2 1 =256
  216. 216. 16<<2 -> 16*2 2 =64 </li></ul>
  217. 217. Төрөл хөрвүүлэлт <ul><li>Тоон төрлийг нэгээс нөгөө рүү хөрвүүлэх нь 2 янз байдаг </li><ul><li>Implicit буюу чимээгүй
  218. 218. Explicit буюу илээр хувиргах </li></ul><li>Чимээгүй хувиргалт </li><ul><li>Жижиг хэмжээтэй төрлөөс
  219. 219. Том хэмжээтэй рүү хувиргахад чимээгүй хувиргалт хийгдэнэ </li></ul><li>Жишээ
  220. 220. int a=100;
  221. 221. long b=a; </li></ul>
  222. 222. Илээр хувиргах <ul><li>Их хэмжээтэй төрлөөс </li><ul><li>Бага хэмжээтэй төрөл рүү хувиргахад
  223. 223. Өгөгдлийн нарийвчлал алдагддаг
  224. 224. Тиймээс илээр хувиргалт хийдэг </li></ul><li>( ) операторыг ашигладаг
  225. 225. float a=123.4F;
  226. 226. int b=(int)a;
  227. 227. long l=1300000L;
  228. 228. byte b=(byte)l; </li></ul>
  229. 229. Операторуудын зэрэглэл <ul><li>Операторууд нь </li><ul><li>Зэрэглэлийн дарааллаар үнэлэгдэнэ </li></ul><li>Зэрэглэл ижил бол </li><ul><li>Үнэлэгдэх чиглэлээс шалтгаална </li></ul><li>Операторууд нь </li><ul><li>Зүүнээс үнэлэгдэх
  230. 230. Баруунаас үнэлэгдэх 2 янз байна </li></ul><li>( ) хаалтаар </li><ul><li>Үнэлэгдэх дарааллыг өөрчилж болно </li></ul></ul>
  231. 231. Операторуудын зэрэглэл <ul><li>Жишээ
  232. 232. a && b || c -> (a & b) || c
  233. 233. Утга олгох оператор нь </li><ul><li>Баруунаас үнэлэгдэнэ </li></ul><li>a+=b+=c -> a+=(b+=c) </li></ul>
  234. 234. Операторуудын зэрэглэл <ul><li>Зэрэглэлийн дарааллаар </li></ul>Операторууд Үнэлэгдэх чиглэл [ ] . ( ) функц дуудах Зүүнээс баруун ! ~ ++ – + - ( )cast new Баруунаас зүүн * / % Зүүнээс баруун + - Зүүнээс баруун >> << >>> Зүүнээс баруун < <= > >= instanceof Зүүнээс баруун == != Зүүнээс баруун & Зүүнээс баруун ^ Зүүнээс баруун
  235. 235. Операторуудын зэрэглэл <ul><li>Зэрэглэлийн дарааллаар </li></ul>Оператор Үнэлэгдэх чиглэл | Зүүнээс баруун && Зүүнээс баруун || Зүүнээс баруун ?: Баруунаас зүүн = += -= *= /= %= %= |= <<= >>= >>>= Баруунаас зүүн
  236. 236. Төгсөв <ul><li>Анхаарал тавьсанд баярлалаа </li></ul>

×