Java тілі негіздері

МАЗМҰНЫ

КІРІСПЕ 4

Курстық жұмысымның соңында AddressBook қосымшасының J2ME компиляторында жасалған, дайын программа листингісі бар. Толық мәліметті жұмыс барысында кездестіресіз. 4
1.JAVA ТІЛІ НЕГІЗДЕРІ 5
1.1 Java жаңа, арнайы жасалынған бағдарламалау тіл, платформа және технология 5
1.2 Java виртуалды машина (JVM) 6
1.3 Java.да бағдарламалар жасауға қажетті комплект 6
1.4 Java тілінің деректер түрлері 9
1.5 Айнымалылар 10

2.ҰЯЛЫ ТЕЛЕФОНҒА ADDRESSBOOK ҚОСЫМШАСЫН JAVA ТІЛІНДЕ ОРЫНДАУ 12
2.1 Телефондарға арналған бағдарламалау орталары. Java 2 Micro Edition (J2ME) платформасы 12
2.2 J2ME берілгендер форматы және структуралары. Обьектілер 12
2.3 Телефон мен компьютер байланысы 13
2.4 Эмуляторлар 16
2.5 Графикамен жұмыс 17
2.6 Массивтер 18
2.7 Примитивті түрлер 19
2.8 Ағымдарды ұйымдастыру және файлдармен жұмыс, InputStream класы. 19
2.9 AddressBook класы 20
2. 10 TEXTBox класы 22
2.11 Мәтін енгізу және жолдармен жұмыс 23

ҚОРЫТЫНДЫ 24

Қолданылған әдебиеттер тізімі: 25

BookReader текст мәтінін оқуға араналған қосымшасының программалық листингісі: 26
КІРІСПЕ

Менің бұл курстық жұмысымда Java программалау тілі пәні бойынша оқытылған Java бағдарламалау кешені және Eclipse программалау ортасы жайлы жалпы тоқталып мінездеме бердім. Өзіме жеке берілген тапсырма бұл яғни осы Java бағдарламалау ортасымен ұялы телефондарға арналған телефон нөмерлерін ашып, оқып олармен жұмыс істейтін AddressBook қосымшасын жасау еді. Бұл қосымшаны орындау жай жолмен жүзеге аспайды. Мұндай қосымшаларды орындау үшін арнайы Java ның коспиляторлары яғни бөлімдері бар. Мысалы алатын болсақ J2ME компиляторы. Бұл компилятор телефондарға әртүрлі қосымшалар құруға арналған. Java ның мобилді варианты J2ME стандарты бар барлық телефондарға арналып жасалған. Бірақ кейбір телефондардың ақауына байланысты немесе жасалуына байланысты бұл программа жүзеге аспайды.
Осы компилятормен қосымша құралық. Жұмыс барысындағы қиыншылықтар яғни бастапқы негізгі бөлімдері, жұмыстың орындалу тәртібіне тоқталып, кішкене түсінік бере кетелік. Ең бастапқы мәселе телефонға арналған қосымша болғандықтан телефон мен компьютердің байланысын қарастырған жөн. Қазіргі кезде телефон мен компьютер байланысын ұйымдастыратын құрылғылар драйверлер көптен. Бізге ең қолайлысы USB сымтетігі арқылы телефонды компьютерге қосу. Керекті драйвер арқылы сымтетікті орнатып телефонды қосамыз.
Ендігі мәселе сол қосымшамызды орһындайтын бағдарламаны яғни жанағы J2ME компиляторын тауып орнатамыз. Керекті шарттарын орындап қосымшаның құрылуына кірісеміз.
Бағдарламамыз дайын, телефонымыз бар деп бастайық. Бұл AddressBook қосымшасы телефон дисплейіндегі телефон нөмерлерін оқуға және олармен жұмыс істеуге арналған. Сондықтан бұл қосымшаның өзіне тән яғни қосымша құру үшін қажетті шарттар мен класстар, операторлар, амалдар тағы басқа параметрлері бар. Мысалға алар болсақ экранға шығару үшін арналған кластар, мәтінмен жұмыс істейтін әртүрлі кластар, қосымшаны жүктейтін параметрлер қасиеттер және тексеретін арнайы программалар. Осылардың барлығын қарастыра отырып жасалған.
Курстық жұмысымның соңында AddressBook қосымшасының J2ME компиляторында жасалған, дайын программа листингісі бар. Толық мәліметті жұмыс барысында кездестіресіз.
Қолданылған әдебиеттер тізімі:

1. Брюс Эккель. Философия Java. 3-е изд. СПб.: Питер, 2003.
2. Жерздев С. B.Java 2 Micro Edition. ИТЛаб, ННГУ, ВМК, 2003.
3. Вартан Пирумян. Платформа программирования J2ME для портативных устройств. КУДИЦ-Образ, 2002.
4. Кен Арнольд, Джеймс Гослинг. Язык программирования JAVA. СПб.: Питер, 1997.
5. Е.Л.Буткевич. Пишем программы и игры для сотовых телефонов СПб.:
Питер, 2006.
6. Использованы материалы порталов и форумов:
7. java.sun.com/j2me/docs
8. www.juga.ru
9. www.javagu.ru
10. http://servlets.chat.ru/
11. http://javapower.da.ru/
12. http://www.purejava.ru/
13. http://java.iba.com.by/
14. http://java7.da.ru/
15. http://codeguru.earthweb.com/java/
16. http://www.artima.com/
        
        МАЗМҰНЫ
КІРІСПЕ 4
Курстық жұмысымның соңында ... ... J2ME ... ... ... ... бар. ... мәліметті жұмыс барысында
кездестіресіз. 4
1.JAVA ТІЛІ НЕГІЗДЕРІ 5
1.1 Java жаңа, арнайы жасалынған бағдарламалау тіл, платформа және
технология ... Java ... ... (JVM) ... ... ... жасауға қажетті комплект 6
1.4 Java тілінің деректер түрлері 9
1.5 Айнымалылар 10
2.ҰЯЛЫ ... ... ... JAVA ... ОРЫНДАУ 12
2.1 Телефондарға арналған бағдарламалау орталары. Java 2 Micro Edition
(J2ME) платформасы 12
2.2 J2ME берілгендер ... және ... ... ... ... мен ... байланысы 13
2.4 Эмуляторлар 16
2.5 Графикамен жұмыс ... ... ... ... түрлер 19
2.8 Ағымдарды ұйымдастыру және файлдармен жұмыс, InputStream класы. 19
2.9 ... ... ... 10 TEXTBox ... 22
2.11 Мәтін енгізу және жолдармен жұмыс 23
ҚОРЫТЫНДЫ ... ... ... ... ... мәтінін оқуға араналған қосымшасының программалық
листингісі: 26
КІРІСПЕ
Менің бұл курстық жұмысымда Java программалау тілі пәні ... Java ... ... және Eclipse ... ... ... ... мінездеме бердім. Өзіме жеке берілген тапсырма бұл яғни осы
Java бағдарламалау ортасымен ұялы ... ... ... ... оқып ... ... істейтін AddressBook қосымшасын жасау еді. ... ... жай ... ... ... ... қосымшаларды орындау
үшін арнайы Java ның коспиляторлары яғни бөлімдері бар. Мысалы ... J2ME ... Бұл ... ... әртүрлі қосымшалар
құруға арналған. Java ның мобилді варианты J2ME стандарты бар ... ... ... ... ... телефондардың ақауына
байланысты немесе ... ... бұл ... ... ... ... ... құралық. Жұмыс барысындағы қиыншылықтар яғни
бастапқы негізгі бөлімдері, жұмыстың орындалу тәртібіне тоқталып, кішкене
түсінік бере кетелік. Ең ... ... ... арналған қосымша
болғандықтан телефон мен компьютердің байланысын ... жөн. ... ... мен компьютер байланысын ұйымдастыратын құрылғылар драйверлер
көптен. ... ең ... USB ... ... ... ... ... драйвер арқылы сымтетікті орнатып телефонды қосамыз.
Ендігі мәселе сол қосымшамызды орһындайтын бағдарламаны яғни ... ... ... ... ... ... ... қосымшаның
құрылуына кірісеміз.
Бағдарламамыз дайын, телефонымыз бар деп бастайық. Бұл AddressBook
қосымшасы телефон дисплейіндегі телефон ... ... және ... ... ... ... бұл қосымшаның өзіне тән яғни қосымша құру үшін
қажетті шарттар мен класстар, операторлар, амалдар тағы ... ... ... алар болсақ экранға шығару үшін арналған кластар, мәтінмен
жұмыс істейтін әртүрлі кластар, қосымшаны ... ... ... ... ... программалар. Осылардың барлығын қарастыра отырып
жасалған.
Курстық жұмысымның соңында AddressBook қосымшасының J2ME ... ... ... ... бар. Толық мәліметті жұмыс барысында
кездестіресіз.
1.JAVA ТІЛІ НЕГІЗДЕРІ
1.1 Java жаңа, арнайы жасалынған бағдарламалау тіл, ... ... ... ... ... Algol тілі, ал кейін Pascal
тілі пайдаланса объекітті-бағытталған бағдарламалаудың түрлі әдістерін
сипаттауда Java тілі ... ... ... Pascal тілі ... орын ... ... үйретуде Java тілі сондай орын
алуда.
Java тілі Smalltalk, Pascal, C++ т.б тілдер негізінде арнайы жасалған
бағдарламалау тілі.
Сонымен, ... ... ... Java тілі жаңа ... ... Тіліді жасаушылар С++ негізге ала отыра одан кейбір мынадай:
қосымшалардың қауыпсіздігін бақылау мүмкіндігін болдыртпайтын,
програмистке ... ... аса ... жоқ, ... кеш және қиын тану көзі ... ... алып тастады.
Қолданылатын процессордің (Intelx86, SunSPARC, PowerPC т.б) түрлерімен
анықталатын аппарат архитектурасы ... мен ... ... ... Sun Solaris, Linux, Mac OS т.б) ... ... деп аталады.
Java-ны жасаушылар жай тағы бір бағдарламалау тілді жасап қоя салмай
қосымшаларды атқару үшін ... ... ... ой ... ... ... OaK ... келеқоймайтын түрлі тұрмыстық
жабдықтар үшін жасалған болатын.
Java байт-кодтарға негізделген, ол деген қосымшалар модулі ... ... ... ... ... ... Басқаша айтқанда, платформаға байланысты машиналық кодтарға ие
бинарлы файлдар емес бағадарламаларды жасауға қол жеткізу.
Java-ны ... ... ... ... ... (HotJava – “ыстық Java”) деп аталды. Internet арқылы таралымға
ие OaK тілінде жазылған шағын ... ... ... деп ... Beans ... дәндері) атты компонентерді жасау технологиясы пайда
болып, Java аралық бағдарламалармен камтамас ету және таралымды жүйелер
әлеміне кіріп CORBA технологиясымен тығыз байланды. ... ... ... ... (JAR – кофе ... ... ... бағдарламалау технологиясы жұзеге асырылып сервлеттер
(servlets) EJB (Enterprise JavaBeans) пайда болды. Серверлер деректер
базасымен өз ара ... ... ... ... JDBC (Java ... драйверлер пайда болды.
1.2 Java виртуалды машина (JVM)
Java тілінде қосымшалар арнайы, универсалды ортада орындалады, оның
аты (JVM) Java Virtual Machine (Java ... ...... тәуелсіз байт-кодты (bytecodes) нақты процессорға
арналған ережелер жинағына қайта айналдырушы арнайы бағдарлама. Басқаша
айтқанда, Java-қосымшаларды ... ... ... ... ... реалды платформаға жазылған бағдарлама. JVM командалары кысқа,
ұзындығы 1 байт, дегенменде ұзындықтары 2 немесе 3 байт командаларда бар
(команданың орташа ... 1,8 ... VMS (Virtual ... ... ... ... бастапқы коды қарапайым тексті
файл түрінде ұсынылады, олар кезкелген тексті редакторда немесе арнайы
жасау жабдықта жасалынуы мүмкін және .java ... ие. Бұл ... ... ... ол ... ... Java ... Нағыз осы компакты және эффективті ережелер жинағы JVM ұстап
тұрады және Java платформаның ажырамас бөлігі болады. Компилятордың
жұмыс ... ... ... .class кеңістігінде сақталынады.
Оссындай файлдардан тұратын Java-қосымша виртуалды машинаның кірісіне
беріледі, ол ... ... ... ... ... ... өзі
бағдарлама болып келеді.
1.3 Java-да бағдарламалар жасауға қажетті комплект
Java тілінде бағдарламалар жасауға қажетті ... ... ... JRE (Java Runtime ...... ... JDK (Java ... Kit) сәйкес платформаларға (J2SE, J2EE, J2ME)
арналған – компилятор және библиотекалар;
... орта ... ... JBuilder, Visual Age,
VisualCafe т.б.)
Қазіргі уақытта үш Java-платформасы бар:
1. Java 2 Platform, Standard Edition (J2SE) – ... ... ... және ... ... мүмкіндік береді;
2. Java 2 Platform, Enterprise Edition (J2EE) – ... ... ... ... ... ... арналған;
3. Java 2 Platform, Micro Edition (J2ME) – аппаратты ресурстары шектеулі
(опертативті память клемі, процессордың жылдамдығы) үлкен емес және
мобильды ... ... ... ... т.б.) ... ... қолданылады.
Негізгі өнім (23 мамыр 1995 ж.):
• JLS (Java Language Specification) – Java тіліді сипаттағыш
(лексиканы, деректер түрін, негізгі құрылымдарды сипаттайды). ... ... ... ... JVM-ды сипаттағыш. Ең алдымен виртуалды машиналар жасаушыларға
арналған;
• JDK – демонстрациялық мысалдардан, стандартты библиотекалардан және
утилиттерден тұратын жасаушының ... ... javac ... ... ... ... ... java бағдарламасымен
жұзеге асырлған. Апплеттерді тестілеу үшін жұмысқа қосуға арнайы
appletviewer ... бар. ... код ... ... ... үшін javadoc ... ... версиялары:
• Java тілінің 1.0, 1.1, 2.0 версиялары бар. ... ... ... жасауға арналған стандартты құралдардың бірнеше
версиялары бар. Соңғы версия аталуы SDK (Software Development Kit),
қазіргі версияның ресми аталуы “Java (TM) SDK, Standard ... ... ... ... Kit) ... ... bin\ - программистің құрал-сайман каталогы;
• demo\ - ... ... include\ - C,C++ ... ... үшін (include-old\
алдынғы ... jre\ - ... ... ... jre\bin\ - ... (JVM);
• jre\lib\ - пайдаланушыға арналған Java ... + ... ... lib\ - ... ... Java ... - ... өмір циклы
Бастапқы Java-бағдарлама .java кеңістік (расширение) файлында
болуы қажет. Бағдарлама байт-кодқа javac.exe компиляторымен
трансляцияланады. Байт-кодқа трансляцияланған бағдарлама .class
кеңістігін иеленеді. Бағдарламаны іске қосу үшін ... ... ... ... оған ... бағдарламаны
орындау керектігі көрсетіледі. Сонымен қатар, оған бағдарламаны
орындауда қандай библиотекаларды пайдалану қажет екені көрсетіледі,
библиотекалар jar ... ... ... ... ... java.lang – кезкелген қосымшаның жұмыс істеуі үшін қажетті базалық
кластар (аты language қысқартылған);
• java.util – ... ... ... ... java.applet – апплеттерді жасауға арналған кластар;
• java.awt, java.awt.peer – пайдаланушының графикалық интерфейсін (GUI)
жасауға арналған библиотека, Abstract Window Toolkit;
• java.awt.image – ... ... ... арналған қосымша кластар;
• java.io – файлдар және деректер ағанымен (streams) ... ... java.net – ... ... - 1.4 ... ... ... Java тілінің деректер түрлері
Java – қатаң түрленген тіл (strongly typed ... ... ... ... және кезкелген өрнек белгілі түрге ие. Бұндай
қатаң тәртіп көптеген қателіктерді компиляция уақытында анықтау
мүмкіндігін береді. Сондықтан, Java-дағы деректер түрлерінің моделдерін
анық түсіну ... ... ... ... ... тіліне еңгізілген барлық негізгі деректер түрлері екі топқа
бөлінеді:
• қарапайым түрлер (primitive types)
... ... ... ... ... (reference types) мыналарға бөлінеді:
• массивтер (arrays);
• кластар (classes);
• интерфейстер ... ... ... types) 8. ... мыналарға бөлуге болады:
• логикалық (кейде булев деп айтылады) boolean түрі;
• 7 санды ... ... ... ... 5 бүтін (integral) – byte, short, int, long, char.
• 2 ... ... – float, ... ... түрі екі ... мәнге ие:
• true (ақиқат)
• false (жалған)
Логикалық boolean түрінің мәні салыстырмалар нәтижесінде пайдаболады,
шартты және циклды операторларда ... ... ... ... сақтау үшін пайдаланылады.
Басқаша айтқанда, айнымалылар мәндер үшін контейнерлер болып келеді.
Нәтижесінде, айнымалы жарияланған кезде компьютердің ... ... ... ... үшін ... ... ... жұмыс оны жариялаудан (declaration) басталады.
Айнымалыны жариялау және жариялауда инициализациялау келесі түрде
сипатталынады. Алдымен айнымалының түрі ... ... оның ... егер ... ... ... ол бағдарламаның орындалу немесе
компиляция уақытында есептелінетін тұрақты немесе өрнек ... ... ... ... ... ... үтір ... және жаңа
дәл сол түрдегі айнымалыны жариялауға болады.
Айнымалыны жариялауда final кілітті сөзі пайдалануы мүмкін.
final-айнымалы тұрақталынады. Мысалы, final double pi = 3.1415; ... ... = ... ... үш негізгі сипаттамаларға ие:
• аты – айнымалыны ерекше жалпылауыштайды және бағдарламада
оған қатнасуды ... ... түрі – ... қандай шамаларды сақтай алатындығын
сипаттайды;
• мәні – осы кезеңде айнымалыда сақталудағы ағымды шама
Айнымалыларды пайдалануда келесі тәртіптер мен нұсқаулар ... ... ... оның ... ... ... айнымалыларды нақты мәндермен инициализациялау керек;
• айнымалыларға сипаттама ат беру керек;
• айнымалылардың аттары келесі ... ... ... ... олар ... ... $ белгісін және астын сызу (_)
белгісін құрауы ... олар ... ... ... айнымалы аты Java-ғы бірде бір кілітті сөздермен тура келмеу
керек;
• айнымалылардың аттары әріптер регистрына сезімтал келеді;
• айнымалылардың ... бос ... ... ... ... ... ADDRESSBOOK ҚОСЫМШАСЫН JAVA ТІЛІНДЕ ОРЫНДАУ
2.1 Телефондарға арналған бағдарламалау орталары. Java 2 Micro Edition
(J2ME) ... ... ... телефондарға арналған бағдарламалау
орталары. Осының ... ... ... іске ... Sun
Microsystems компаниясының продуктісін ... Осы ... ... ... ... ... бағдарламалау ортасы ол JavaTM 2
SDK, Standard Edition (J2SE SDK) version 1.4.2. Бұл ... ... ... болады Java.sun.com/j2se/1.4.2/download.html. Тағы керекті
продукт бұл Sun Java Wireless Toolkit (J2ME WTK). Бұл орта да ... ... ... ... жинағы. Осы программаларды
орнатамыз яғни берілген мақсатымыз ұялы телефонға текстік ... ... ... программа BookReader программасын құру үшін. WTK орнату
барысында ол өздігінен Java виртуалды ... ... Ең ... ... ... KToolbar утилитімен жүзеге асады. Төмендегі суретте
көрсетілген.
2.1-сурет - J2ME коспиляторының ... ... ... ... біз ... ... J2ME берілгендер форматы және структуралары. Обьектілер
Java тілі обьекті бағытталған бағдарламалау тіліне жатады. ... ... ... ... ... New ... арқылы жаңа обьекті
құрамыз. Осы жерде бьектінің турі көрсетіледі. Обьект ... ... ... оның ... ... Бұл ... негізгі тәсіл
болып табылады. Ол обьектінің ... ... ... ... инициялизацияның кіріс параметрлерін береді.Ал бұл параметрлер
new операциясымен, ... ... ... ... str = new String (“some ... ... конструктордан тұруы мүмкін. Конструктор шақырылған
кезде new операциясымен берілген параметр ... ... ... ... ... қарастырайық. Берілген класс арқылы
өзіміздің ... ... ... Ол ... ... ... яғни бастапқы
берілген класстың қасиеттері мен ... ... Бұл ... ... келесі extends кілттік сөз арқылы жүзеге асады.
Public class Graph extends ... да ... ... ... ... мұрагерленуге тыйым
салынған. Оның орнына интерфейс арқылы берілген әдіс ... ... ол әдіс ... ... ғана ... емес. Әрбір құрылған класс бір ... ... ... ... class Point extends Canvas implements Command listener
2.3 Телефон мен компьютер байланысы
Бұл платформа шектелген ресурстар мен ... және ... ... шығарылған. Оларға ұялы телефондар, пейджерлер және смарт карталар,
миникомпьютерлер. Бұл платформа Java ... ... ... деп
айтуға болады.
Ең бірінші қарастыратын мәселеміз, Java тілін оқи алатын телефон
аламыз. Бірақ ... ... ... ... ... ... ... телефондар өздігінен программалық қамтамасыз ете алмайды
яғни программа құра ... ... ... редакторлар, компиляторлар,
құрал саймандармен жұмыс істеуге арналмаған. Бірақ кейбір қазіргі ... Java ... оқи ... Ол да заманымыздың жетістіктері. Енді бұл
программаны телефон өздігінен ... ... оны ... істеуге
болады. Ол үшін әрине телефонды компьютермен байланыстыру ... ... ... ... бар. Ең ... ... түрі USB сымтетігін
қолдану. Сымтетікті компьютерімізге қосуымыз үшін сол сымтетіктің драйверін
орнатуымыз керек. Қазіргі кезде ... сол ... ... ... ... деген анықтама шығады. Осыдан кейін кенет жаңа ... ... ... ... көрсетеді, төмендегі суретте
көрсетілген.
2.2 -сурет - Жаңа құрылғы ... ... ... ... ... ... кейін драйвер
құрылады, ендігі мақсатымыз бағдарламалық қаматамасыздандыру керек. Ол ... ... тан ... Prolific ... Comm Port ... ... ... басамыз.
2.3-сурет - Құрылғылар диспетчері
Егерде сіз жаңа құрылғыны көрсеңіз онда драйвер құрылысы жақсы бітті
деген сөз. Бұл сымтетіктің тек осы ... үшін ғана ... ... ... мол, ... айта кетер болсақ ойындар, ... ... ... шығу және тағы ... ... ... ... қарастыратын мәселеміз
мынадай. MobiMB программасын іске қосамыз. Осы ... ... ... ... суреті шығуы керек. Содан соң сол ... яғни ... ... ... ... шығады. Осы бумалар
арқылы біз телефонның оперативті жадысы яғни телефонның толық ... Біз ... ... осы ... ... орналасуы керек.
2.4-сурет - Телефон жадысы
Бұл сурет бізге телефон мен компьютердің нақты байланысын ... ... ... ... ... келесідей 4 бумасы көрініп тұр
Gatlery\Images, Gallery\Tones, ... Games. Бұл ... ... ... ... ойындар және әрине Java қосымшалары
берілген. Төменгі жолда телефондағы бос жады орны ... ... ең ... екі бума яғни ... Games ... Осы ... ... прграммамызды орналастырамыз.
Ендігі қарастыратын мәселе құрылған программаны телефонға орналастыру.
Бұл жерде көңіл бөлетін жағдай телефонға жіберілетін ... ... және .jad ... ... ... ... ... бумасына осындай
кеңейтіліммен бізге белгілі тәсілмен көшіріп ... ... Егер ... онда ... жады орны ... ... ... дұрыс
емес. Программа толықтай көшірілсе, сымтетікті суырып, телефондағы
программа яғни ... ... іске ... яғни ... ... ... құру ... бізге сол өнімді тексеріп ... ... ... Бұл керек шарт. Ол үшін біз Эмулятор программасын
қолданамыз. Оның ... ... ... ... тексеріп, дұрыс
емес жерлерін анықтап береді. Эмулятордың арқасында телефонымызға таза, еш
қатесіз программа орнатылады. Бірнеше эмуляторлар J2ME Wireless ... ... ... Ол ... өнім деп айтуға болады.
Эмуляторды өздігінен құратын болсақ ол директорий ішіндегі мына бумға
wtklib\devices орналасуы қажет. Ол жерде біздің J2ME Wireless Toolkit ... ның ... ... J2ME ... бар барлық телефондарға
арналып жасалған. Бірақ кейбір телефондардың ақауына байланысты немесе
жасалуына ... бұл ... ... ... қорыта келетін болсақ ұялы телефонымызға программа құру ... ... ... ... Java ... бар ... табуымыз керек.
2. Windows операциялық жүйесі бар компьютер.
3. ... мен ... ... ... ... ... - ақ ... келесідей ... ... ... ... ... ... ... орнату программасы.
3. J2SE SDK (version 1.4.2) Java ... J2ME WTK ... ... ... ... ... аса ... емес.
2.5 Графикамен жұмыс
Класс Canvas. Класс Canvas абстрактілі болып табылады. Бұл жерде біз
қарапайым ... ... құра ... ... ... ... класс деп ең болмағанда бір абстрактілі тәсілі
бар класты ... ... ... жаңа ... құру негізі ретінде
қолданамыз.
Canvas класында ... ... ол abstract void ... ... ... ... ... суреттелуін сипаттайды және Graphics класының
обьектісінің аргументі бола алады.
Graphics класы. Graphics класы төменгі дәрежелі графикалық ... Ол ... ... ... және ... да ... ... Тағы бір бізге керекті мүмкіндігі текстік символдарды және
символдардың түстерін өзгерте алады.
Ал енді Graphics ... ... ... болсақ бірінші мәселе
экранның көлемін алуымыз қажет. Бұл екі әдіспен ... ... ...... ... ұзындығын береді.
2.int getCl ipWidth() — суреттеу облысының енін ... ... ... ені мен ... ала отырып біз барлық
нүктелерді сәйкес координаталармен орналастыра ... ... ... ... ... ... экран бетіне емес шектеулі ғана
облысқа суреттеу үшін келесі әдістер пайдалануға ... setClip( int x. inty. int width, int height) – ... үшін ... ... ... height ... және width енімен пикселдер
арқылы беріледі.
Суреттеу облысын анықтап алғаннан кейін ендігі ... ... ... ... ... ... әдістерді қарастырамыз:
1. void drawLinednt xl, intyl, intx2. inty2) — (x,y) ... ... түзу ... сызады. Бұл класта нүктені суреттеу
берілмеген, егер нүкте салу керек болса оны түзу сызық арқылы сызу
керек.
2. void ... int x. inty, int width, int height) — (х, ... width ... және height ... ... ... ... inty. intwidth, intheight, intarcWidth,
intarcHeight) — дөңес бұрышты тіктөртбұрышты ... void drawArc( int x, inty, ... ... int ... ... (х,у) ... доға ... геометриялық фигураларды түсіре аламыз. Бұл финураларды
суреттеп қоймай оларды түстерге бояи ... Бұл ... ... ... ... void fi 11 Rect(int x. int у. int width. ... voidfillRoundRect(intx, inty, 1ntwidth, intheight. ... void ... x, inty. int width, ... ... int ... тағы ... да әдістер бар.
2.6 Массивтер
Оперативті жадының ұяшықарында ... бір ... ... деп ... Java да ... ... 3 этаптан тұрады.
Төменде көрсетілген:
1. Массивтің анықталуы. Бұл этапта айнымалы мен массив типі ... ... ... ... ... images[];
2. Массивті бергенде new операторы арқылы беріледі. Бұл жерде ... ... беру ... Сол ... ... ... сәйкес жады
көлемі беріледі:
Array= new int[50];
Images = new image[20];
3. Массивті инициялизациялау яғни берілген массивке мән ... ... ... ... ... олар 0 ден ... аяғына
дейінберіледі.
Array[0]=5;
Array[1]=10;
Маиссивтермен жұмыс істегенде оның неше көлеммен берілгеніне көп көңіл
бөлу керек.
2.7 ... ... ... бағытталған бағдарламалау тілі болғандықтан обьект
ретінде берілген әрбір берілгендерге негізгі типтер ... Бұл ... деп ... Бұл ... ұялы ... программалауда кеңінен
қолданылады.
Бұл типтердің маңызы толық және азэффектілі обьект құра алады. ... ... ... ... ... аз жады ... алатын обьектілер құру.
Төменде примитивті типтердің тізімі берілген яғни J2MЕ платформасына
сәйкес. Олар өзі алатын жады көлемімен берілген:
byte 1 ... 2 ... 2 ... 4 ... 8 байт
2.8 Ағымдарды ұйымдастыру және файлдармен жұмыс, InputStream класы.
Берілгендер мен ... ... ... ұйымдастыратын класс ол
InputStream класы. Бұл класты берілгендерді жіберетін труба яғни өткел деп
теңеуге болады. InputStream класы ... ... ... ішінде
негізгісі болып табылады.
Ол келесідей шығару әдістерін береді:
1. int read ( ) – берілгендер ағымынан ... ... оқу. Бұл ... ... ... ... барлық кез келген класс
мұрагерлерінде бұл ... ... яғни ... int read (byte[ ] b)- ... берілгендерді буферге санайды. Бұл
функция барлық берілгендерді оқиды, егерде ол ... ... int read ( byte [ ] b, int off, int len) - len ... ... ... және off ... ... ... int avai I abi е() – ... ... ... байт ... void mark ( int read limit ) – ағымдағы берілгендерді бір орыннан
қайта оқу.
6. void close ( ) – ... ... және ... ... ... AddressBook класы
Біздің мақсатымыз ұялы телефон экранынан берілген ... ... ... ... ... керек. Ең бірінші қарастыратын ... ... ... ... ... яғни ... ... ауыстыру яғни кішірейтуге бізге Graphics класы керек. Бұл ... font) ... ... Осы әдісті қолданамыз.
Font класынан бастайық. Бұл ... ... ... ... Оны ... асыру үшін осы кластың Font getFont(int face, ... int size) ... ... ... ... ... face - FACE_SYSTEM, FACE_MONOSPACE ... ... ... шрифт түрлері.
2. size - SIZE_SMALL, SIZE_MEDIUM немесе SIZE_LARGE осы ... ... ... ... style - ... шрифт стилі осы константа арқылы беріледі немесе
STYLEJOLD, STYLEJTALIC и ... осы ... ... int ...... ... пикселдерде көрсетеді.
5. int charWidth(char ch) — шрифттердің енін ch пикселдерді көрсетеді.
6. int charsWidth(char[] ch. i n t offset, int length) — ch ... енін ... Offset ... ... ... дейін.
7. int stringWidth(String str ) — str жолында жолдың енін пикселдерде
қайтарады.
8. int substringWidthCString s t r , i n t offset, int Ten) — ... ... ... енін көрсетеді. Offset позициясынан бастап
length ұзындығына дейін.
BookCanvas класы берілген тексті ... Page Index ... ... ... яғни ... тексті сақтаймыз. Берілгендер ағымынан
сөздерді біртіндеп оқитын функция paint ... ... ... ... ... ... телефонымыздағы 2 батырмасы келесі
бетке ауысуды қамтамсыз етеді. Ал 1 батырмасы алдыңғы бетті алып келеді, ... ... ... ... алып ... берілгендерді оқу үстінде келесідей ауытқулар беріледі:
1. EOFException — файл ... ... ...... және ... ... базалық ауытқулары.
Бағдарламамыздың мидлетінде BookCanvas класында обьект құру ғана қалды
және оны оқу ... ... ... құру керек. Құрылған программаны
эмуляторда жібереміз және келесідей керемет оқылымды аламыз.
2.5-сурет – Егер ішкі ... ... ... ... онда озіңнің
адрестік кітапшасын құруға болады.
2. 10 TEXTBox класы
TEXTBox класы Screen класының ... ... ... Бұл ... ... ... дисплейінде орналасқан текст мәтінін теруге арналған
экран немесе терезе береді. Мұндағы текст ... ... ... тере ... Осы обьектіні құру барысында мәтін беру аймағын көрсету
қажет және ол ... ... ... ... ... дол ... жүзеге асады:
Textox(StringTitle, Stringtext, intmaxsize, intconstraints)
Тағы бір ескере кететін мәселе бұл жерде терілетін текстің типі берілу
керек. Мысалғ айтар болсақ обьекті ... ... бұл ... мәтініне тек
сандар енгізілу керек деп ... онда ... ... мәтінін тергенде
әріптер шықпайды тек сандар шығады.
Мәтіндік ... ... ... ... ... ... Any – ... символдарды теруге мүмкіндік береді.
- EMAILADDR – электрондық почта адесіне арналған мәтіндер.
- NUMERIC – бүтін сандар енгізуге арналған.
- ...... ... ... ... PASSWORD – ... ... ашылу кодын енгізгенде пайдаланылады.
Мысал келтірсек PIN – код.
- URL – ... ... ... арналған URL форматында.
Мәтін текстін теруге арналған обьекті ... ... ... ... Displeyable класындағы барлық ... ... Бұл Displey ... әдсі ... ... ... ... жұмысты textbox класының әдістерімен
жүзеге асырамыз:
- void delete (int offset, int length) – length ... ... offset ... ... ... int ...... ағымадғы пзициясының күйіне келтереді.
0 – текст бастамасы.
- int ... – data ... ... барлық тексті
көшіреді. Көшірілген текст өзгертілмейді.
- int getConstraints() – ... ... ... ... ...... ... максималды мәнін қайтарады.
- string getString() – терілген мәтінді жол ... ... void ... src. Int ... – position ... бастап
src жолын мәтін аймағна береді.
- void setChars(char[]data, intofset,intlength) – offset ... data ... ... length ... қояды және мәтін аймағын
тазартады.
- int setString (String text) – text ... ... ... ... ... ... ... int size() – мәтін аймағында берілген символдар санын қайтарады.
2.11 Мәтін енгізу және жолдармен жұмыс
Бұл бөлімде біз ... ... ... ... ... дамушы кезеңде ұялы телефондар қолданушыға ... ... ... ... және ... ... қолданады. Осы бөлімде
қарастыратын мәселеміз телефонарқылы текст мәтінін теру және оларды ... ... ... Бұл ... ... ... табылады.
ҚОРЫТЫНДЫ
AddressBook қосымшасы яғни ұялы телефоныңызға арналған адрестік
кітапша телефон нөмерлерін сақтау және олармен жұмыс жасау үшін арналған
қосымша жасалды. Бұл қосымшаны ... ... орын ... яғни керекті
компоненттер мен параметр, класстарға түсініктеме берілді. Бұл ... ... ... осы ... ... және ... ... жайлы, оның шығу тегі жайлы қысқаша мәліметтер ... ... ... ... қорытынды анықтама берелік
болсақ, Бұл өте керемет яғни мүмкіндігі көп кез ... ... ... ... ... ... ... бағдарламалау ортасы немесе
түсінікті сөзбен айтқанда өнім шығаратын «Завод – фабрика» деп теңеу
келтіруге болады.
Қолданылған әдебиеттер тізімі:
1. Брюс Эккель. Философия Java. 3-е изд. СПб.: ... ... ... С. B.Java 2 Micro Edition. ... ... ВМК, 2003.
3. Вартан Пирумян. Платформа программирования J2ME для портативных
устройств. ... ... Кен ... ... Гослинг. Язык программирования JAVA. СПб.: Питер,
1997.
5. Е.Л.Буткевич. Пишем программы и игры для сотовых телефонов СПб.:
Питер, 2006.
6. ... ... ... и форумов:
7. java.sun.com/j2me/docs
8. www.juga.ru
9. www.javagu.ru
10. http://servlets.chat.ru/
11. http://javapower.da.ru/
12. http://www.purejava.ru/
13. http://java.iba.com.by/
14. http://java7.da.ru/
15. http://codeguru.earthweb.com/java/
16. ... ... ... ... ... ... ... "AdressBook" прграммасының мысалы
import javax.microedition.midlet.MIDlet:
import javax.microedition.lcdui.Command;
import javax.microedition.lcdui.CommandListener;
import javax.microedition.lcdui.Display;
import javax.microedition.lcdui.Displayable;
import javax.microedition.lcdui.Form;
import javax.microedition.lcdui.List;
import javax.microedition.lcdui.TextField;
import javax.microedition.lcdui.DateField;
import javax.microedition.lcdui.TextBox;
import java.util.Date:
import java.util.Calendar;
import java.io.ByteArrayOutputStream;
import java.io.ByteArraylnputStream;
import java.io.DataOutputStream:
import java.io.DatalnputStream:
import java.io.IOException;
import ... javax.mi croediti ... ... ... ... mport java x. mi croedi ti on. rms. RecordFi ... javax.mi croedi ti ... on;
public class AddressBook extends MIDlet implements CommandListener
{
private Display display; // дисплей менеджері
private RecordStore ... // ... ... List nameList; // Аттар ... int ... // ID ... ... Command ... // ... тізіміне сәкес ат
private TextBox tbName.tbPhone.tbEMail: // экрандар арасында өтудің
командалары
private Form dateForm: // Жазу ... ... ... ... // ... күн ... ... void destroyApp(boolean destroy) // туған күн енгізуінің ... void ... ... {
// ... ... ... қоймасын ашу
recordStore = RecordStore.openRecordStoreC"Address-Book", true):
} catch (RecordStoreException rse) {}
// Дисплей менеджеріне сілтеме алу
display - Display.getDisplay(this);
// Командалардың объектілерін құру
ok = new ... ... ... " new CommandC'Add". Command.BACK, 1);
next • new Command("Next". Command.OK. 1);
back - new ... ... ... Ат ... ... = new ... ... нөмерін енгізу аймағы
tbPhone - new TextBox( "Number:11."". 15. TextField.PHONENUMBER):
tbPhone.addCommand(next):
tbPhone.addCommand(back):
tbPhone.setCommandLi stener(this):
// Электрондық пошта енгізу аймағы
tbEMail - new ... ... ... күн ... ... * new DateField("Birthday",DateField.DATE);
dateForm = new FormC"');
dateForm.append(dateField);
dateForm.addCommand(next):
dateForm.addCommand(back);
dateForm.setCommandListener(this):
// аттар тізімін құру,
BuildNameListO;
// Той иесін іздеу
String name • SearchBirthdayO:
// Егер ат табылған болса
if(name!=null) {
// Еске ... ... ... ... = new ... Еске түсіргішті формаға қосу
remindForm.append Сname + " has a birthday ... ... ... ... ndForm.setCommandLi stener (this);
// форманы көрсету
display.setCurrent(remindForm);
}
} else
// аттар тізімін экранда көрсету
di splay.setCurrent(nameLi st):
// SearchBirthday әдісі той иесінің атымен жолды қайтарып береді
// егер сол күні той иесі ... онда ... ... String ... ... name ≫ ... {
// туған кундер объектісінің сүзгісін жасау
BirthdayFilter filter = new BirthdayFilterO;
// туған күнге лайық жазулардың ... ... re - ... ... ID ... алу
int id - re.nextRecordldO:
// ID туралы жазуларды алу
byte[] record • ... bais = new ... dis • new ... ... rse) ... ... ioe) {}
return name:
private void BuildNameListО {
nameList = new ListC'Address-Book", List.IMPLICIT):
nameLi st.setCommandLi stener(this):
nameList.addCommand(add):
nameList.addCommand(ok):
try {
int size = ... - new ... Ordering ... = new AlphabeticalOrderingO:
RecordEnumeration re - recordStore.enumerateRecords(null, comparator.
false),:
int i=0:
while(true) {
int id = re.nextRecordldO; ... record - ... bais=new ... dis - new ... ... ioe) {}
public void commandAction(Command с Displayable d) {
if(c==add)
display.setCurrent(tbName);
if(c—ok) {
if(d==namel_ist) {
try {
int id - recIndexes[nameList.getSelectedIndex()]:
byte[] record - ... bais=new ... dis = new ... infoForm = new ... birthday = new Date(dis.readLongO):
DateField df = new DateField("".DateField.DATE);
df.setDate(birthday):
infoForm.append(df);
i nfoForm.addCommand(ok);
i ... ... ... rse) ... ioe) {}
} else {
display.setCurrent(nameList);
if(c==next) {
if(d==tbName) display.setCurrent(tbPhone);
if(d==tbPhone) display.setCurrentCtbEMail):
i f(d==tbEMai1) display.setCurrent(dateForm);
if(d==dateForm) {
ByteArrayOutputStream baos - new ... dos = new ... ... ... ... ... ... 0. baos.sizeO);
}
catchdOException ioe) {}
catch (RecordStoreException rse) {}
BuildNameListO:
display.setCurrent(nameList);
if(c==back) {
if(d==tbName) display.setCurrent(nameList);
if(d==tbPhone) ... ... ... class ... implements RecordFilter {
public boolean matches(byte[] candidate) {
ByteArraylnputStream bais = new ... dis - new ... ... ≪ new Date'O;
try {
dis.readUTFO;
dis.readUTFO;
dis.readUTFO:
birthDate.setTi me(di s.readLong());
}
catch (IOExcepti.on ioe) { return false: }
Calendar rightNow • Calendar.getlnstanceO:
Calendar birthday = Calendar.getlnstanceO:
bi rthday.setTi me(bi ... ... ... ... ... ... ... true;
else
return false;
private class Alphabetical Ordering implements RecordComparator {
public int compare(byte[] reel. byte[] rec2) ... baisl = new ... bais2 = new ... disl = new DataInputStream(baisl);
DatalnputStream dis2 = new DataInputStream(bais2);
String namel = null:
String name2 ≫ null:
try {
namel = disl.readUTF О :
name2 - ... ... ... ioe) ... result = ... (result < 0)
return RecordComparator.PRECEDES;
else
if (result == 0)
return ... ...

Пән: Информатика
Жұмыс түрі: Реферат
Көлемі: 22 бет
Бұл жұмыстың бағасы: 500 теңге









Ұқсас жұмыстар
Тақырыб Бет саны
Java12 бет
Java бағдарламалау тілі28 бет
Java және Android бағдарламасында мобильді құрылғы құру30 бет
Java тілінің даму тарихы6 бет
Java тілінде қарапайым сағат құру12 бет
Java туралы жалпы түсiнiк11 бет
JavaScript- та бағдарламалау25 бет
«Жылан» ойыны тақырыбы бойынша JAVA бағдарламалау тілі14 бет
Android OS жұмыс істеу принципі және Android OS қосымша құру23 бет
E-leaning - де білімді бақылау жүйесін құру92 бет


Исходниктер
Пәндер
Көмек / Помощь
Арайлым
Біз міндетті түрде жауап береміз!
Мы обязательно ответим!
Жіберу / Отправить


Зарабатывайте вместе с нами

Рахмет!
Хабарлама жіберілді. / Сообщение отправлено.

Сіз үшін аптасына 5 күн жұмыс істейміз.
Жұмыс уақыты 09:00 - 18:00

Мы работаем для Вас 5 дней в неделю.
Время работы 09:00 - 18:00

Email: info@stud.kz

Phone: 777 614 50 20
Жабу / Закрыть

Көмек / Помощь