Contenu connexe
Similaire à Video lab1-web
Similaire à Video lab1-web (20)
Video lab1-web
- 1. Батлав А.Отгонбаяр …...................................................
ЮүЭсАй Мэргэжлийн сургуулийн тэнхимийн
эрхлэгч
Видео хичээлийн лабораторын ажил болон
сорилын материал №1
Хичээлийн Нэр: Объёкт хандалтат програмчлал-Жава I
Бэлтгэсэн: Л.Бямбасүрэн /багш/
Улаанбаатар хот 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);
}
}
Гаралт:
90
false
Дасгал 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. Гаралт:
30
25
50
25
1
Дасгал 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!=value2
value1<value2
value1<=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 2
value1 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);
}
}
Гаралт
1
0
1
-1
false
true
Дасгал 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 төгрөгийн цалинтай бол сарын цалинг бодож
гаргана уу.