Инженерия факультеті


Java бағдарламау тілінің негізгі мүмкіндіктері



бет2/4
Дата26.02.2023
өлшемі34.48 Kb.
#470078
1   2   3   4
кцт бөж

Java бағдарламау тілінің негізгі мүмкіндіктері

  • Жадты автоматты басқару.

  • Ерекше жағдайларды өңдеудің кеңейтілген мүмкіндіктері.

  • Енгізу-шығару сүзгісінің бай жиынтығы.

  • Стандартты коллекциялар жиынтығы: массив, тізім, стек және т. б.

  • Желілік қосымшаларды құрудың қарапайым құралдарының болуы.

  • HTTP сұрауларын орындауға және жауаптарды өңдеуге мүмкіндік беретін сыныптардың болуы.

  • Кейінірек көптеген тілдерге (мысалы, Python) тасымалданған көп ағынды қосымшаларды құрудың тілдік құралдары.

  • Деректер базасына бірыңғай қол жетімділік:

  • жеке SQL сұраулары деңгейінде-JDBC, SQLJ негізінде;

  • деректер базасында сақтау қабілеті бар объектілер тұжырымдамасы деңгейінде — Java Data Objects (ағылш.) және Java Persistence API.

  • Жалпылауды қолдау (1.5 нұсқасынан бастап).

  • Lambd, тұйықталу, кірістірілген функционалды бағдарламалау мүмкіндіктерін қолдау (1.8-ден бастап).

Java тілінде тек 8 қарапайым түрі бар: boolean, byte, char, short, int, long, float, double. Сондай — ақ, көмекші тоғызыншы қарапайым түрі бар-void, бірақ мұндай типтегі айнымалылар мен өрістерді кодта жариялау мүмкін емес, ал түрдің өзі тек рефлексияда қолдану үшін тиісті сыныпты сипаттау үшін қолданылады: мысалы, Void класы арқылы[док. 6] void түрінің белгілі бір әдісі: Hello екенін білуге болады.class.getMethod("main", String[].class).getReturnType() == Void.TYPE
Қарабайыр типтердің мәндерінің ұзындығы мен диапазоны іске асырудан гөрі стандартпен анықталады және кестеде келтірілген. Char түрі локализацияға ыңғайлы болу үшін екі байтты етіп жасалды: стандарт қалыптасқан кезде Unicode-16 болған, бірақ Unicode-32 емес. Нәтижесінде бір Байт түрі қалмағандықтан, Byte жаңа түрі қосылды, ал Java-да басқа тілдерден айырмашылығы, ол қол қойылмаған. Float және double түрлері арнайы мәндерге ие болуы мүмкін.
Мұндай қатаң стандарттау тілді платформаға тәуелсіз ету үшін қажет болды, бұл Java-ға қойылатын идеологиялық талаптардың бірі. Дегенмен, платформалық Тәуелсіздікке қатысты бір шағын мәселе әлі де қалды. Кейбір процессорлар нәтижелерді аралық сақтау үшін 10 байтты регистрлерді пайдаланады немесе басқа тәсілдермен есептеу дәлдігін жақсартады. Java-ны әртүрлі жүйелер арасында мүмкіндігінше үйлесімді ету үшін алғашқы нұсқаларда есептеу дәлдігін жақсартудың кез-келген тәсіліне тыйым салынды.Алайда, бұл өнімділіктің төмендеуіне әкелді. Платформалық тәуелсіздік үшін дәлдіктің нашарлауы бірнеше адамға қажет екендігі анықталды, әсіресе егер бұл бағдарламалардың баяулауымен төленсе. Көптеген наразылықтардан кейін бұл тыйым алынып тасталды, бірақ дәлдікті жақсартуға тыйым салатын strictfp кілт сөзі қосылды. Java 17 - ден бастап дәлдікке тыйым қайтадан күшіне енді және strictfp кілт сөзі ескірген деп жарияланды.
Java тілінде келесі ережелер бар:
1.Егер бір операндта double типі болса, екіншісі де double типіне ауысады.
2.Әйтпесе, егер бір операндта float типі болса, екіншісі де float типіне ауысады.
3.Әйтпесе, егер бір операндтың ұзын түрі болса, екіншісі де ұзын түріне ауысады.
4.Әйтпесе, екі операнд та int түріне ауысады.
Кірістірілген түрлерді жасырын түрлендірудің бұл әдісі Си/С++түрлендіруімен толығымен сәйкес келеді.
Java технологиясын Java әзірлеушілер қауымдастығының мүшелері, сәулетшілер мен энтузиастар сынап көрді, жетілдірді, кеңейтті және тексерді. Java барлық дерлік компьютерлік платформаларда өнімділігі жоғары портативті қосымшаларды жасауға мүмкіндік береді. Қолданбалардың гетерогенді ортада болуы компанияларға қызметтердің кең спектрін ұсынуға мүмкіндік береді, өнімділікті, өзара әрекеттесу деңгейін және соңғы пайдаланушылардың бірлескен жұмысын жақсартуға және корпоративтік және тұтынушылық қолданбаларды ортақ пайдалану құнын айтарлықтай төмендетуге ықпал етеді. Java әзірлеушілер үшін таптырмас құралға айналды және олар үшін келесі мүмкіндіктерді ашты:

  • бағдарламалық жасақтаманы бір платформада жазу және оны кез келген басқа платформада іске қосу

  • веб-шолғышта жұмыс істейтін және веб-қызметтерге қол жеткізе алатын бағдарламалар құру

  • интернеттегі форумдар, дүкендер, сауалнамалар, HTML формаларын өңдеу және т. б. үшін серверлік қосымшаларды әзірлеу

  • жоғары мамандандырылған қосымшаларды немесе қызметтерді құру үшін Java тілін қолдана отырып қосымшаларды немесе қызметтерді біріктіру

  • ұялы телефондарға, қашықтағы процессорларға, микроконтроллерлерге, сымсыз модульдерге, сенсорларға, шлюздерге, тұтынушылық өнімдерге және электронды құрылғылардың кез-келген басқа санаттарына арналған мүмкіндіктерге бай және тиімді қосымшалар құру.

Көптеген колледждер мен университеттерде Java платформасында бағдарламалау курстары оқытылады. Академacle академиясы мектеп, кәсіптік және жоғары білім беру мекемелеріне бағдарламалық қамтамасыз етудің толық портфолиосын, оқу курстарын, хостинг технологияларын, элективті оқытуды, оқу мақсаттарында пайдалану үшін қолдау мен сертификаттау ресурстарын және жүздеген мың студенттерге Java қолдауын ұсынады. Сондай-ақ, әзірлеушілер Java әзірлеушілеріне арналған Oracle веб-сайтында қол жетімді материалдар, Java технологиясына арналған ақпараттық бюллетеньдерге жазылу және Java журналы, Java оқулықтары мен Java жасаушыларға арналған бағдарламалау орталықтарын пайдалану, сондай-ақ веб, виртуалды бағдарламаларға қатысу арқылы Java бағдарламалау саласындағы біліктілігін арттыра алады. немесе нұсқаушылар өткізетін оқу курстары мен сертификаттар.
Java тілінде объектіні жадтан нақты жою мүмкін емес-оның орнына қоқыс жинау жүзеге асырылады. Қоқыс жинаушыға жадты босату қажеттілігі туралы "кеңес" беретін дәстүрлі әдіс-бос мәннің айнымалысына null тағайындау, бұл қажет болған жағдайда ұзақ өмір сүретін нысанда сақталатын қажет емес нысанды босату тиімді болуы мүмкін. Алайда, бұл null мәнімен ауыстырылған нысан міндетті түрде жойылады және дереу жойылады дегенді білдірмейді, бірақ болашақта бұл нысанның жойылатынына кепілдік бар. Бұл әдіс тек объектіге сілтемені жояды, яғни меңзерді жадтағы объектіден ажыратады. Нысанды қоқыс жинаушы жоймайтынын ескеру керек, егер ол пайдаланылған айнымалылардың немесе объектілердің кем дегенде бір сілтемесімен көрсетілсе. Сондай-ақ, қоқыстарды мәжбүрлеп жинауды бастау әдістері бар, бірақ олардың Орындаушы ортадан туындайтынына кепілдік берілмейді және оларды пайдалану ұсынылмайды.
Java процедуралық тіл емес: кез-келген функция тек сынып ішінде бола алады. Бұл " функция "немесе" мүше-функция "(ағылш. member function), тек әдіс. Стандартты функциялар да әдістерге айналды. Мысалы, Java-да sin () функциясы жоқ, бірақ Math әдісі бар.Math класының sin () (құрамында sin (), cos (), exp (), sqrt (), abs() және басқаларынан басқа) әдістері бар. Java-дағы конструкторлар әдістер болып саналмайды. Java-да деструкторлар жоқ және finalize() әдісін ешқандай жағдайда деструктордың аналогы деп санауға болмайды.
Java-да статикалық өрістер мен статикалық әдістер қолданылады, олар static кілт сөзімен беріледі. Статикалық өрістер c++ - мен бірдей мағынаға ие: мұндай өрістердің әрқайсысы сыныптың меншігі болып табылады, сондықтан статикалық өрістерге қол жеткізу үшін тиісті сыныптың даналарын жасау қажет емес.Мысалы, Math класында жүзеге асырылатын математикалық функциялар , бұл сыныптың статикалық әдістері.
Final (final) кілт сөзі өрісті, әдісті немесе сыныпты сипаттау кезінде әр түрлі мағынаға ие.
Сыныптың соңғы өрісі сипатталған кезде немесе сынып конструкторында инициализацияланады. Кейіннен оның мәнін өзгерту мүмкін емес. Егер статикалық класс өрісі немесе айнымалы тұрақты өрнекпен инициализацияланған болса, оларды компилятор атаулы тұрақты ретінде қарастырады; бұл жағдайда олардың мәнін коммутатор операторларында, сондай-ақ шартты компиляцияда if операторымен қолданған кезде қолдануға болады.
Жергілікті айнымалылардың мәндерін, сондай-ақ final кілт сөзімен белгіленген әдіс параметрлерін тағайындағаннан кейін өзгерту мүмкін емес. Бұл жағдайда олардың мәндерін анонимді сыныптар ішінде қолдануға болады.
Final сөзімен белгіленген сынып әдісін мұрагерлік кезінде қайта анықтау мүмкін емес.
Java-да static, final немесе private ретінде нақты жарияланбаған әдістер c термин терминологиясында виртуалды болып табылады: негізгі және мұрагерлік сыныптарда әр түрлі анықталған әдісті шақырған кезде әрдайым орындалу уақыты тексеріледі.
Java-дағы абстрактілі әдіс қайтарылатын мәннің параметрлері мен түрі берілген, бірақ денесі берілмеген әдіс деп аталады. Абстрактілі әдіс Мұрагер сыныптарда анықталады. C++ - дағы абстрактілі әдістің аналогы-таза виртуалды функция. Сыныпта дерексіз әдістерді сипаттау үшін сыныптың өзі де дерексіз деп сипатталуы керек. Абстрактілі сынып объектілерін құру мүмкін емес.
В Java есть интерфейсы, которые не содержат методов для реализации, а специальным образом обрабатываются JVM: CloneableSerializableRandomAccessRemote.
Java 5.0 нұсқасынан бастап тілде жалпыланған бағдарламалау механизмі пайда болды-c++үлгілеріне сыртқы жағынан жақын шаблондар. Арнайы синтаксистің көмегімен сыныптар мен әдістердің сипаттамасында параметрлерді көрсетуге болады-сипаттама ішінде өріс түрлері, параметрлер және әдістердің қайтарылатын мәндері ретінде пайдалануға болатын түрлер.
// Объявление обобщённого класса


Достарыңызбен бөлісу:
1   2   3   4




©dereksiz.org 2024
әкімшілігінің қараңыз

    Басты бет