Дәрістер кешені 1 Телекоммуникациялары. Түрлендірушілер: Байланыс желілер Мақсаты


Идентификаторлар. Айнымалылар және түрлері. Қарапайымдылық және оның түрлері



бет42/47
Дата07.01.2022
өлшемі0,89 Mb.
#17843
1   ...   39   40   41   42   43   44   45   46   47
Идентификаторлар. Айнымалылар және түрлері. Қарапайымдылық және оның түрлері. Идентификаторлар – программалау тілінің айнымалыларының, ішкі функциялары және басқа да элементтерінің аттары. Идентификаторларда тек әріптер мен цифрларды ғана қолдануға болады. Сонымен қатар, ең бірінші әріп (оның ішінде астын сызу және доллар белгісі), содан кейін әріптер мен цифрлардың аралас жиынтығы қолданылуы керек. Ұлттық алфавитінің кейбір символдарын әріп ретінде қарастыруға болады, сондықтан да оларды идентификаторларда қолданамыз. Бірақ олардың кейбіреулері ажыратқыш символдар ретінде қолданылғандықтан, идентификаторларда қолдануға болмайды.

Java тілі регистрлі–сезімтал болып келеді. Бұл дегеніміз, идентификаторлар символдардың қандай регистрлерде (үстіңгі немесе астыңғы) терілгеніне сезімтал деген мағынада.

Мысалы, i1 және I1 аттары әртүрлі идентификаторларға сәйкес келеді. Бұл ереже C/C++ тілдерін оқығандарға белгілі болуы мүмкін. Бірақ басында PASCAL тілін оқығандарға қиындық туғызтуы мүмкін. Себебі PASCAL тілі регстрлі–сезімталсыз болып саналады.

Java тіліндегі идентификаторлардың ұзындығы әртүрлі. Бірақ ойға қонымды аймақта болады. Идентификатор экранның барлық ұзындығын алып тұрса да, NetBeans компиляторы дұрыс жұмыс істейді.

Айнымалы – ішіндегісін өзгертуге болатын белгілі бір аты бар жад ұяшығы. Қандай да бір айнымалыны пайдалану үшін осы айнымалы қолданылатын жерге байланысты белгілі бір орынға қарай программа аймағында көрсетілуі керек. Айнымалыны көрсету кезінде ең алдымен айнымалының типін көрсетеді, содан кейін берілетін айнымалының идентификаторы көрсетіледі. Типін көрсету компиляторға ұяшықтың көлемін белгілеуге (айнымалыға немесе сол типтің мәніне арналып бөлінген жад көлемін), сонымен қатар, айнымалыға және осы типтің мәніне қолдануға болатын ережелер қызметтеріне мүмкіндік береді. Java тілінде алдын-ала анықталған типтер бар: int – бүтін сан, float – заттық сан, boolean – логикалық мән, Object – Javaның ең қарапайым объектілі типі (класс), және т.б. Сонымен қатар, өзіндік объектілік типтерді (класстар) де беруге мүмкіндік бар. Ол жайында кейінірек қарастырамыз.

Қандай да бір MyType1 типі бар a1 және b1 айнымалыларын хабарлау келесі түрде жүреді:

MyType1 a1,b1;

Мұндағы, MyType1 – осы айнымалылардың типінің аты.

Басқа мысал – int типті j айнымалыны хабарлау:

int j;


Типтер алдын-ала анықталған және қолданушы болып бөлінеді. Мысалы, int – алдын-ала анықталған тип, ал MyType1– қолданушы. Айнымалыны хабарлау үшін ешқандай да кейінге сақталған сөздер керек емес, ал типтің аты берілетін айнымалылардың атының алдынан жазылады.

Айнымалыларды хабарлау оларды инициализациялау, яғни бастапқы мәндерін меншіктеу арқылы жүреді. Осындай хабарлау үшін бүтін санды i1 және i2 айнымалылары арқылы мысал келтірейік:

int i1=5;

int i2=-78;

немесе

int i1=5,i2=-78;



C/C++ тілдеріндегі меншіктеуге сәйкес келетін int i1=i2=5 типін меншіктеуге шектеу қойылған. Жаңа бастаған программистерге көрсете кететін жағдай, “=” символы Java және басқа да тілдерде меншіктеу символы ретінде қолданылады. Ол осы символдың оң жақ жағынан тұрған мән сол жақта тұрған айнымалыға көшіріледі дегенді білдіреді. Яғни, мысалы, b=a меншіктеуі b аты бар айнымалыға (ұяшыққа) a аты бар айнымалының (ұяшықтың) мәнін көшіру дегенді білдіреді. Сондықтан да, математика тұрғысынан қарағанда дұрыс емес x=x+1 өрнегі программалауда дұрыс болып табылады. Бұл дегеніміз: х деген аты бар ұяшықта сақталған мәнді алып, оған 1-ді қосып (бұл х ұяшығының сыртында жүзеге асады), одан кейін алынған нәтижені х ұяшығына бұрынғы мәннің орнына ауыстырып жазу.

Айнымалыларды хабарлағаннан кейін олар өрнектер және меншіктеулерде қолданылады:

айнымалы=мән;

айнымалы=өрнек;

айнымалы1= айнымалы2;

және солай әрі қарай жалғаса береді. Мысалы,

i1=i2+5*i1;

Мәліметтер бір ғана жад ұяшығында сақталса және осы ұяшықтың ішкі ұяшықтары болмаса оларды қарапайым типтер деп атаймыз. Жад ұяшықтарында мәліметтердің өздері емес, тек қана осы мәліметтердің адрестері, яғни мәліметтерге сілтемелер болса, онда оларды сілтемелі типтер деп атаймыз. Сілтемелі айнымалыға меншіктеу кезінде мәліметтердің өздері емес, тек жаңа адрес кіргізіледі. Бірақ сілтемелі айнымалыларда сақталынған адреске қолжетімділік жоқ. Бұл C/C++/PASCAL тілдерінде орын алатын мәліметтермен және олардың адрестерімен жұмыс істеу барысындағы әдейіліп істелмеген қателерді шектеу, сонымен қатар, ақпаратты әдейі бұзудан қорғау үшін істелген.

Егер сілтемелі айнымалыға сілтеме меншіктелмеген болса, онда null символдық аты бар нөлдік адрес сақталған. Егер сілтемелер типтері сәйкес келсе, оларды бір-біріне меншіктеуге, сонымен қатар, null мәнін меншіктеуге болады. Осы кезде бір сілтемелі айнымалыдан басқасына адрес көшіріледі. Сілтемелі айнымалыларды теңдеумен, сонымен қатар, null теңдеуімен салыстыруға болады. Осы кезде мәліметтер емес, сілтемелі айнымалыларда сақталған олардың адрестері салыстырылады. Java тілінде барлық типтер қарапайым және сілтемелі болып бөлінеді. Қарапайым типтерге келесі алдын-ала анықталған типтер жатады: бүтін санды типтер byte,short,int, long, char, айнымалы нүктесі бар мәліметтер типі float, double, сонымен қатар, бульдік (логикалық) тип boolean және enum (enumeration сөзінен қысқартылған – “санау”) кейінге сақталған сөзі арқылы хабарландырылатын санау-типтері. Javaның басқа типтерінің барлығы сілтемелі болып табылады.



Достарыңызбен бөлісу:
1   ...   39   40   41   42   43   44   45   46   47




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

    Басты бет