Лабораторийн ажил № 1

  • 693 views
Uploaded on

 

  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Be the first to comment
    Be the first to like this
No Downloads

Views

Total Views
693
On Slideshare
0
From Embeds
0
Number of Embeds
0

Actions

Shares
Downloads
22
Comments
0
Likes
0

Embeds 0

No embeds

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
    No notes for slide

Transcript

  • 1. Объёкт хандалтат програмчлал-Жава I хичээлийн Лабораторийн ажил № 1 Улаанбаатар хот 2011-05-05
  • 2. Хичээлийн нэр: Жава 1Лаборатори № 1Сэдэв: JDK суулгах,Анхны жава програм, Жава хэлний өгөгдлийн эгэл төрлүүд,хувьсагчзарлах, операторуудОноо: 0-5Хугацаа: 7 хоног1. JDK суулгах: Жава програмыг хөгжүүлэхийн тулд Java Development Toolkit буюу JDK суулгах ёстой.Ubuntu дээр дараах алхамаар суулгана. 1.1 Sun-ийн JDK-ийг дараах командаар суулгана. $ нь терминалыг заана: $ sudo apt-get install sun-java6-bin sun-java6-jre sun-java6-jdk 1.2. Ubuntu-д OpenJDK суусан байж болох юм. Тэгвэл sun-ийн jdk-ийг ашиглана гэдгийг системд хэлэх ёстой. Дараах командыг ажиллуулна. $ sudo update-java-alternatives -s java-6-sun 1.3 Тохиргоо хийх. JAVA_HOME, PATH, CLASSPATH зэрэг орчны хувьсагчдыг тохируулна • JAVA_HOME – jdk-ийн суусан замыг заана • PATH орчны хувьсагч бөгөөд терминалаас оруулсан командыг хайх директоруудыг агуулна • CLASSPATH Таны үүсгэсэн .class файлуудыг агуулах директорыг заана Дараах үйлдлүүдийг терминалаас хийнэ: • $HOME директор дотроо java_lesson нэртэй фолдер үүсгэнэ • gedit $HOME/.bash_profile командаар .bash_profile эсвэл • gedit $HOME/.profile командаар .profile гэсэн файлуудын аль нэгийг нээгээд дараах мөрүүдийг хамгийн сүүлд нь нэмнэ export JAVA_HOME=/usr/lib/jvm/java-6-sun export PATH=$PATH:$JAVA_HOME/bin export CLASSPATH=$HOME/java_lesson • хадгалаад, log out хийгээд эргээд log in хийж нэвтэрнэ 1.4. Шалгах • Терминалаас дараах командаар sun-jdk суусан эсэхийг шалгана $ java – version • Гаралт java version "1.6.0_03" Java(TM) SE Runtime Environment (build 1.6.0_03-b05) Java HotSpot(TM) Server VM (build 1.6.0_03-b05, mixed mode)
  • 3. 2. Анхы програм бичиж ажиллуулах 2.1 Дараах кодыг $HOME/java_lesson/Test.java файлд бичээд хадгална public class Test { public static void main(String[] args){ System.out.println(“Hello World ”); }} ▪ хөрвүүлж, ажиллуулах $ cd $HOME/java_lesson $ javac Test.java $ java Test ▪ Гаралт Hello World 2.2 Зарим алдаанууд • $ javac Test.java $ javac : command not found • Тайлбар: JDK суугаагүй . Эсвэл PATH хувьсагчийн тохиргоо буруу гэсэн үг • $ javac Test.java $ javac: file not found: Test.java • Тайлбар: Таны Test.java файлыг олохгүй байна. • $ java Test $ Exception in thread "main" java.lang.NoClassDefFoundError: Test
  • 4. Caused by: java.lang.ClassNotFoundException: java_lesson.Test at java.net.URLClassLoader$1.run(URLClassLoader.java:202) … Could not find the main class: Test. Program will exit. • Тайлбар: Test.class файлыг олохгүй байна. Тиймээс echo $CLASSPATH гэж шалгах хэрэгтэй. Эсвэл замыг дараах байдлаар зааж java -cp $HOME/java_lesson Test хөрвүүлэх хэрэгтэйДасгал 1. Хувьсагч зарлах/**Жава програм бүр нь хамгийн багадаа нэг public классаас бүрдэх ёстой * public классын нэр нь файлын нэртэй адил байх ёстой * */public class VarDeclare { /**Програм main() функцаас эхлэж биелэнэ*/ public static void main(String[] args) { /**i,k,l нэртэй int төрөлтэй хувьсагчид зарласан*/ int i,k,l; /**i хувьсагчид утга оноосон*/ i=90; /**i хувьсагчийн утгыг хэвлэсэн*/ System.out.println(i); /**boolean төрлийн хувьсагч зарлаад утга оноосон*/ boolean b=false; /**boolean хувьсагч b-ийн утгыг хэвлэсэн */ System.out.println(b); }}Гаралт:90falseДасгал 2. Өгөгдлийн эгэл төрлүүдpublic class DataType1 { public static void main(String[] args) { /**char төрлийн утгыг дотор бичнэ*/
  • 5. char c2="; char c3=@; /**boolean төрөл нь true эсвэл false утгын аль нэгийг авна*/ boolean b1=true; boolean b2=false; /**int төрлийн утгыг 10т,8т,16т-аар бичиж болно*/ int x1=100; int x2=0123; int x3=0xAB; /**byte төрөл нь 1 байт хэмжээтэй*/ byte a1=123; /**short төрөл нь 2 байт хэмжээтэй*/ short a2=32322; /**long төрөл нь 8 байт хэмжээтэй*/ long l=1234456L; /**Бутархай тоог float,double төрлөөр хадгалдаг*/ float f=123.45F; double d=123.45D; }}Дасгал 3. Арифметик операторуудpublic class ArithmeticOperators { public static void main(String[] args) { int result=10+20; System.out.println(result); result=result-5; System.out.println(result); result=result*2; System.out.println(result); result=result/2; System.out.println(result); result=result%2; System.out.println(result); }}
  • 6. Гаралт:302550251Дасгал 4. Харьцуулах операторуудpublic class ComparisionDemo { public static void main(String[] args) { int value1=1; int value2=2; /**Жава хэлний харьцуулах операторууд нь boolan утга буцаадаг*/ /**if нь Си хэлтэй адил.Ялгаа нь boolean утга үнэлдэг*/ /**== оператор нь 2 талынх нь утга тэнцүү бол true, тэнцүү * биш бол false утга буцаана * */ if(value1==value2) System.out.println("value1==value2"); /**!= оператор нь 2 талынх нь операнд ялгаатай бол true, тэнцүү * бол false утга буцаана * */ if(value1!=value2) System.out.println("value1!=value2"); /**> оператор нь урд талынх нь операнд арынх нь операндаас * их бол true, үгүй бол false утга буцаана * */ if(value1>value2) System.out.println("value1>value2"); /**< оператор нь урд талынх нь операнд арынх нь * операндаас бага бол true, үгүй бол false утга буцаана * */ if(value1<value2) System.out.println("value1<value2"); /**<= оператор нь урд талынх нь операнд арынх нь * операндаас бага буюу тэнцүү бол true, үгүй бол false утга *буцаана */ if(value1<=value2) System.out.println("value1<=value2"); /**>= оператор нь урд талынх нь операнд арынх нь * операндаас их буюу тэнцүү бол true, үгүй бол false утга
  • 7. *буцаана */ if(value1>=value2) System.out.println("value1>=value2"); }}Гаралт:value1!=value2value1<value2value1<=value2Дасгал 5. Нөхцөлт Операторpublic class ConditionalOperators { public static void main(String[] args) { int value1=1; int value2=2; /** && оператор нь хоёр нөхцөл хоёул үнэн бол true утга * буцаана. Аль нэг нь худал бол false утга буцаана * */ if((value1==1) && (value2==3)) System.out.println("value1 is 1 AND value2 is 2"); /** || оператор нь хоёр нөхцөлийн зөвхөн нэг нь үнэн байхад true * утга буцаана * */ if((value1==1) || (value2==3)) System.out.println("value1 is 1 OR value2 is 2"); }}Гаралт:value1 is 1 AND value2 is 2value1 is 1 OR value2 is 2Дасгал 6. Unary операторуудpublic class UnaryDemo { public static void main(String[] args) { int result=+1; System.out.println(result); result--; System.out.println(result); result++; System.out.println(result);
  • 8. result=-result; System.out.println(result); boolean success=false; System.out.println(success); System.out.println(!success); }}Гаралт101-1falsetrueДасгал 7. Эгэл төрлийг хувиргахpublic class PrimitiveCast { public static void main(String[] args) { /**Бага хэмжээтэй төрлөөс их руу хувиргахад * cast хийдэггүй*/ int a=100; long l=a; /**Бутархай төрлөөс бүхэл тоон төрөл руу хувиргахад * (int) байдлаар cast хийдэг * */ float f=123.4F; a=(int)f; System.out.println(a); /**Доорхи илэрхийллийн үр дүн int төрөлтэй гарна * тиймээс cast хийх хэрэгтэй * */ byte b=5; byte c=7; byte d=(byte)(b+c); }}Гаралт:123
  • 9. БИЕ ДААЖ ГҮЙЦЭТГЭХ АЖИЛ Дасгал 1. Тэгш өнцөгтийн талууд өгөгдсөн үед талбай болон приметрийг тооцоолж хэвлэдэг програм бичнэ Дасгал 2. 2 тоог тэнцүү эсвэл аль нь их вэ гэдгийг олдог програм бичнэ. Дасгал 3. Өгсөн 1 оронтой бүхэл тоог 2 тийн тоо рүү хөрвүүлдэг програм бичнэ. Дасгал 4. Оюутны дүн тоогоор өгөгдсөн бол үсгээр хэвлэдэг програм бичнэ. Дасгал 5. Целсийн градусыг Фарангейт рүү хөрвүүлсэн програм бичнэ Дасгал 6. Хэрвээ Болд цагт 2500 төгрөгийн цалинтай бол сарын цалинг бодож гаргана уу.