JavaRush /Java блогы /Random-KK /Модификаторлар немесе Java әлеміндегі сиқырларды қалай шы...
Petr Gorskin
Деңгей
Москва

Модификаторлар немесе Java әлеміндегі сиқырларды қалай шығаруға болады

Топта жарияланған
Қайырлы галактикалық күн, жолдастар! Бұл менің бірінші планетааралық қолжазбам, мен инженер болғандықтан, кейбір ұғымдарды түсіндіруді жерден тыс тілде жасауға болады.
Модификаторлар немесе Java әлеміндегі сиқырларды қалай шығару керек - 1
Кіріспе Менің ойымша, Java есіктері бар шексіз дәліз сияқты (пакет). Осы есіктердің әрқайсысының артында бос орын және файлдар шкафы бар, онда an objectілерді құру нұсқаулары (сыныптары) бар сиқырлы шиыршықтар тауы сақталады. Әрбір айналдыру сипаттамалар (айнымалылар) мен қабілеттердің (әдістердің) жиынтығын сипаттайды - сыныптың өзінде немесе оның негізінде жиналған an objectіде орындалатын әрекеттер (өріс). Бұл кезеңде өзімізді сиқыршы ретінде елестетіп, мүлде жаңа нұсқауды (сынып) жасауға тырысайық. Ендеше: Модификаторлар немесе Java әлемінде сиқырларды қалай шығару керек - 2Даналықтың эликсирін ішейік (негіздерді үйренейік) және нұсқауларды жазуды бастаймыз. Қолжетімді және қолжетімсіз модификаторлар Кез келген нұсқау және оның негізінде жасалған an object, сондай-ақ оның сипаттамалары мен қабілеттері бастапқыда сиқырлы сиқырлы болады деп елестетіп көрейік, яғни. оларға модификаторлардың нақты жиындары тағайындалады. Мүмкін сиқырлар туралы нұсқаулық жасауға тырысайық.
  1. Кластың, нысанның немесе өрістің қолжетімділігін сипаттайтын қатынас модификаторы қажет: ол болмаған жағдайда JVM (бұл әмбебап сиқырдың көзі) бумаға автоматты түрде әдепкі идентификаторды тағайындайды.

    Екінші модификатордан бастап қол жеткізуге болмайтын модификаторлар бар, олар міндетті емес және бір-бірімен қайшы келуі мүмкін (бірақ бірінші кезекте).

  2. Static модификаторы сыныптың, нысанның немесе өрістің статикалық екенін көрсетеді. Бірақ бұл нені білдіреді? Негізінде біз оны егістіктерде сынап көреміз.

    Статикалық айнымалылар класс айнымалылары деп аталады және сол сыныптың барлық даналарына ғана тән. Статикалық әдістерді олар жарияланған нысанды жасамай шақыруға болады. Статикалық класстар бір сыныпты екінші сыныпқа ұялатқанда қолданылады және ішкі және сыртқы сыныптың өзара әрекеттесу принципі әдістерге ұқсас (бұл бөлек талқылау тақырыбы). Нысан ішінде бөлек блок ретінде де пайдалануға болады.

  3. Соңғы модификатор айнымалыға оның тұрақты екенін тиімді түрде көрсетеді. Әдістер үшін - мұрагерлік кезінде оларды қайта анықтау мүмкін емес, бірақ сыныптар үшін бұл одан мұраға алынbyteынының көрсеткіші (өзгермейтін).

    Статикалық және соңғы модификаторлар сыныптарға, нысандарға және өрістерге қолданылады. Дегенмен, олардың кейбіреулеріне ғана қолданылатын модификаторлар бар (немесе тіпті олардың бір бөлігіне, өйткені айнымалы да, әдіс те өріс болып табылады, бірақ барлық модификаторлар екеуіне де қатысты емес). Егер ұқсастықты келтіретін болсақ, жылдамдық үшін етік пен қолғапты ғана сиқырлауға болады (оларды жылдамырақ жылжыту үшін), бірақ жылдамдық үшін қалпақ сиқырлау мағынасыз (Әмбебап бақылау кеңесі (құрастырушы) оған рұқсат бермейді).

  4. Abstract модификаторы тек әдістер мен сыныптарға қолданылады . Абстрактілі әдіс – іске асыру (дене) жоқ әдіс.

    Егер сынып дерексіз деп белгіленсе, онда абстрактілі әдістер бар немесе сол сынып даналарының жасалуын болдырмау үшін жасалады. Егер ұқсастықты салсақ, нұсқаулардың ортасында сіз «Нысанды бояу» тақырыбын көре аласыз, одан кейін сипаттама жоқ. Анау. осы нұсқауды қолдана отырып, сіз нысанды жасай аласыз және оны бояуға да болады, бірақ бұл нақты нұсқаулық қалай (осы нысанның негізінде қызыл нысанды жасау үшін өз нұсқауларыңызды жазыңыз және оны қалай бояуға болатынын сипаттаңыз) айтылмайды.

Көп ағынды ортада жұмыс істегенде арнайы модификаторларды қолдануға болады:
  1. Синхрондалған модификатор тек әдістер үшін пайдаланылады. Оның болуы оны бір уақытта тек бір ағынның орындай алатынын көрсетеді. Нысан ішінде codeтың бөлек блогы ретінде де пайдалануға болады (синхрондау нысанын көрсете отырып).

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

    Айта кету керек, өзгермелі тек бір ағын айнымалыға жаза алатын, ал қалғандары тек одан оқи алатын жағдайларда қолданылады. Басқа жағдайларда синхрондалған модификаторды өзгермелі айнымалыға жазатын әдістерге қосқан дұрыс.

  3. Өтпелі модификатор – тек айнымалылар үшін . Бұл модификатор нысанды сериялау кезінде өткізіп жіберу қажет айнымалы мәндерді белгілейді (бұл соншалықты ақылды процесс, ол туралы негізінен өзіңіз оқи аласыз...)*

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

Қайшылықты модификатор жұптары Түрлі класстарға, an objectілерге және өрістерге модификаторлардың қолданылуынан басқа, қайшылықты жұптар түсінігі де бар. Дулығаны күшпен сиқырлау оны ауыр етеді делік, сонымен бірге жеңіл болсын деп сиқырлағыңыз келеді. Біреуі екіншісіне сәйкес келмейді.
  1. Түпкілікті және өзгермелі – айнымалыларға келетін болсақ, біз бір уақытта оны түпкілікті (тұрақты) және бірнеше ағынның оны өзгерту мүмкіндігі бар деп айта алмаймыз... Өйткені, ол тұрақты және оны кез келген сәтте ағын оқи алады. , бірақ бірде-бір жіп тұрақтыны өзгерте алмайды (Әмбебап бақылау кеңесі оған рұқсат бермейді).
  2. Қорытынды және абстрактілі - сыныптар мен әдістер абстрактілі (бұл көп жағдайда оларды іске асыру үшін нақтылау қажеттілігін білдіреді) және қорытынды бола алмайды, яғни. өзгермейтін. Нұсқаулықта кез келген материалдан (дерексіз бөлік) жақсы берік дулығаны қалай жасау керектігі айтылған, бірақ бұл үшін оның ішінде ешқандай тесік болмауы керек (соңғы міндетті бөлікті өзгерту мүмкін емес).
  3. Абстрактілі және статикалық - дерексіз әдіс бір уақытта статикалық немесе синхрондалмайды. Статикалық абстрактілі әдіс мағынасы жоқ, өйткені ол тек ештеңе жасамайды, сонымен қатар ол бүкіл сыныпқа жатады - нәтиже пайдасыз нәрсе.
  4. Реферат және синхрондалған – жұмысты ешнәрсе жасамайтын әдіспен синхрондаудың мәні неде?
Қорытындылау Сонымен, модификаторлардың сипаттамасы аяқталды, барлық қақтығыстар реттелді және енді сіз нәтижені алдау парағы - сиқырлық диаграммамен біріктіре аласыз: Модификаторлар немесе Java әлеміндегі сиқырларды қалай шығару керек - 3Қорытындылай келе, бұл мақаланы жазу менің қалауымның жүзеге асуы болды деп айтқым келеді. модификаторларды зерттеу. Тәжірибе сәтті болды ма, жоқ па, оны өзіңіз шешесіз. Мен оны жақсарту/түзету бойынша ұсыныстарыңызды күтемін және, мүмкін, біз оны жаңадан бастаған java ойыншылары үшін өте пайдалы нұсқаулыққа айналдырамыз.
Пікірлер
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION