JavaRush /Блоги Java /Random-TG /Таҳлили саволҳо ва ҷавобҳо аз мусоҳибаҳо барои таҳиягари ...

Таҳлили саволҳо ва ҷавобҳо аз мусоҳибаҳо барои таҳиягари Java. Қисми 5

Дар гурӯҳ нашр шудааст
Салом, салом! Имрӯзҳо таҳиягарони Java талабот зиёданд. Албатта, ман ба шумо ҷои холӣ дода наметавонам, аммо ман кӯшиш мекунам, ки ба шумо каме кӯмак расонам, то шумо донишҳои нав гиред ва баъзе камбудиҳоро бартараф кунед. Ҳамин тавр, мо таҳлor 250+ саволҳои мусоҳибаро барои таҳиягари Java идома медиҳем. Истинодҳо ба қисмҳои қаблии таҳлил дар охири мақола мавҷуданд.Таҳлor саволҳо ва ҷавобҳо аз мусоҳибаҳо барои таҳиягари Java.  Қисми 5 - 1

39. Модификаторҳои дастрасӣ дар Java кадомҳоянд? Онҳоро номбар кунед. Онҳо барои чӣ истифода мешаванд?

Ман қаблан тағирдиҳандаҳои дастрасиро дар савол дар бораи унсурҳои инкапсуляцияи Java тавсиф карда будам. Аммо ман ба ҳар ҳол ба шумо хотиррасон мекунам. Тағирдиҳандаҳои дастрасӣ дар Java калимаҳои калидӣ мебошанд, ки сатҳи дастрасиро ба ҷузъи мушаххаси Java тавсиф мекунанд. Тағирдиҳандаҳои дастрасӣ метавонанд:
  • public — унсури дорои ин тағирдиҳанда барои ҳама дастрас хоҳад буд. Онхое. майдонҳо ва усулҳо, синфҳои бо тағирдиҳандаи оммавӣ эълоншуда ба синфҳои дигар ҳам аз бастаи ҷорӣ ва ҳам аз бастаҳои беруна намоён мешаванд;
  • муҳофизатшуда - унсури дорои ин тағирдиҳанда аз ҳама ҷо дар синфи ҷории бастаи ҷорӣ ё дар синфҳои наслӣ дастрас мешавад, ҳатто агар онҳо дар бастаҳои дигар бошанд;
  • пешфарз , ё тағирдиҳандаи гумшуда - ин тағирдиҳанда ба таври ғайримустақим истифода мешавад, вақте ки тағирдиҳандаи дастрасӣ умуман муайян карда нашудааст. Он ба яки қаблӣ шабеҳ аст, ба истиснои он, ки аёният дар синфҳои насли, ки дар бастаҳои дигар мавҷуданд, иҷозат дода мешавад;
  • private махфӣтарин аз ҳама тағирдиҳандаҳост, ки дастрасӣ ба элементро танҳо дар дохor синфи ҷорӣ иҷозат медиҳад.
Таҳлor саволҳо ва ҷавобҳо аз мусоҳибаҳо барои таҳиягари Java.  Кисми 5-2

40. Хусусияти асосии усулњои статикї ва таѓйирёбандаро номбар кунед

Як формулаи хеле аҷиб - "усулҳои тағйирёбанда". Албатта, ин ба усулҳои муқаррарии ғайристатикӣ дахл дорад. Ҳамин тавр, фарқияти асосӣ дар он аст, ки усулҳои статикӣ ба синф тааллуқ доранд ва дар асл, барои онҳо ба шумо лозим нест, ки мисоли ин синф эҷод кунед: онро танҳо бо истифода аз навъи синф даъват кардан мумкин аст. Масалан, мо як усули статикӣ барои саги гурба дорем:
public class CatService {
   public static void petTheCat(Cat cat) {
       System.out.println("Погладить кота - " + cat.getName());
   }
Барои даъват кардани он ба мо намунаи синфи CatService лозим нест :
Cat cat = new Cat(7, "Bobi");
CatService.petTheCat(cat);
Ҳангоме ки усулҳои оддӣ ба an object вобастаанд (тааллуқ доранд) ва барои даъват кардани онҳо, шумо бояд як мисол (an object) дошта бошед, ки дар он метод даъват карда мешавад. Масалан, гурба як усули ғайристатикӣ дорад - мияав:
class Cat {
   public void mew() {
       System.out.println("Meow! Meow! Meow!");
   }
Барои даъват кардани ин усул ба мо як мисоли мушаххаси гурба лозим аст:
Cat cat = new Cat(7, "Bobi");
cat.mew();

41. Маҳдудиятҳои асосии усулҳои статикӣ ва «тағйирёбанда» кадомҳоянд?

Тавре ки ман қаблан гуфтам, маҳдудияти асосии усули муқаррарӣ дар он аст, ки ҳамеша бояд як мисоле бошад, ки дар он усул даъват карда мешавад. Аммо усули статикӣ инро талаб намекунад, аммо он наметавонад ба ин истинод - ба унсурҳои an objectи ҷорӣ муроҷиат кунад, зеро an objectи ҷорӣ барои он вуҷуд надорад.

42. Калимаи калидии статикї чї маъно дорад? Оё усули статикиро бекор кардан ё изофабор кардан мумкин аст?

Элементе, ки бо калимаи калидии static таъин шудааст , на ба an objectи синф, балки ба синф тааллуқ дорад ва ҳангоми боркунии худи синф он бор карда мешавад. Элементҳои статикӣ танҳо барои тамоми барнома ҳастанд ва унсурҳои муқаррарӣ танҳо барои an objectи мушаххас мебошанд. Статикӣ метавонад:
  • майдонҳои синф;
  • блоки ибтидоии синф;
  • усули синф;
  • синфҳои дохorи синф (аммо ин то ҳол тавтология аст).
Усули статикиро бекор кардан мумкин нест: он ба синф тааллуқ дорад ва мерос нест, аммо дар айни замон он метавонад аз ҳад зиёд бор карда шавад.

43. Оё метод дар як ваќт статикї ва абстрактї буда метавонад?

Ман инро дар мақолаи қаблӣ гуфта будам: усул дар як вақт абстрактӣ ва статикӣ буда наметавонад. Абстрактии усул маънои онро дорад, ки он бояд дар вориси ворисон бекор карда шавад. Дар айни замон, усули статикӣ ба синф тааллуқ дорад ва онро бекор кардан мумкин нест: ин боиси ихтилоф мегардад, ки мураттиб онро дида, лаънат карданро оғоз мекунад. Агар шумо чунин вазъият дошта бошед, шумо бояд дар бораи дурустии меъмории аризаатон ба таври ҷиддӣ фикр кунед (охир, дар он чизе нодуруст аст).Таҳлor саволҳо ва ҷавобҳо аз мусоҳибаҳо барои таҳиягари Java.  Кисми 5-3

44. Оё дар байни усулњои муќаррарї усулњои статикиро истифода бурдан мумкин аст? Баръакс? Чаро?

Усулҳои статикиро дар усулҳои муқаррарӣ истифода бурдан мумкин аст, зеро ҳеҷ чиз ба ин халал намерасонад. Дар айни замон, вазъияти баръакс имконнопазир аст: усули статикӣ бидуни истинод ба як мисоли мушаххаси ин синф усули муқаррариро истифода бурда наметавонад. Ва тавре ки мо дар хотир дорем, ин истинод барои аъзоёни синфҳои статикӣ дастрас нест: an objectҳои мушаххаси синф метавонанд ба қадри шумо, ки шумо хоҳед, вуҷуд дошта бошад ва ҳар кадоми онҳо дар дохor он истинод ба худ доранд - ин . Ва чӣ тавр шумо мефаҳмед, ки кадоме аз ин истинод ба шумо лозим аст? Аммо ҳеҷ роҳе. Аз ин рӯ, унсурҳои статикӣ бидуни истинод ба an objectи мушаххас наметавонанд ба унсурҳои ғайристатикӣ муроҷиат кунанд. Воқеан, усули статикӣ метавонад усули ғайристатикиро истифода барад, агар он ба an objectи мушаххас ишора дошта бошад. Масалан, он чизе, ки ҳамчун далел омадааст:
public static void petTheCat(Cat cat) {
   System.out.println("Погладить кота - " + cat.getName());
}
Дар ин ҷо мо мебинем, ки усули статикии petTheCat усули муқаррарӣ ва ғайристатикии an objectи Cat - getName -ро даъват мекунад .

45. Интерфейс чист? Оё интерфейси ниҳоӣ вуҷуд дорад?

Тавре ки мо дар хотир дорем, дар Java мероси сершумор вуҷуд надорад. Интерфейсҳо як чизи алтернативӣ ба он мебошанд. Интерфейс ба як синфи хеле ҷудошуда монанд аст. Онҳо функсияҳоро бидуни татбиқи мушаххас муайян мекунанд, ки аз ҷониби синфҳое амалӣ карда мешаванд, ки ин интерфейсҳоро амалӣ мекунанд (амал мекунанд). Намунаи интерфейс:
public interface Animal {
    void voice();
}
Намунаи татбиқи интерфейс аз ҷониби синф:
class Cat implements Animal {

   @Override
   public void voice() {
       System.out.println("Meow! Meow! Meow!");
   }
}
Чизи асосие, ки шумо бояд дар бораи истифодаи интерфейсҳо донед, ин аст:
  1. Усулҳои интерфейс бояд танҳо сарлавҳаро дар бар гиранд, бе ҷузъи усули мушаххас, яъне. бояд абстракт бошад (вале бе истифодаи калимаи абстрактӣ ). Истиснои ин усулҳои статикӣ ва пешфарз аст, ки бадани методро талаб мекунанд.
  2. Синф метавонад интерфейсҳои зиёдеро амалӣ созад (чунон ки ман гуфтам, ин алтернатива ба мероси сершумор аст), ки бо вергулҳо ҷудо карда шудаанд: синфи Lion Animal, Wild -ро амалӣ мекунад .
  3. Интерфейсҳо бо истифода аз калимаи калидӣ - интерфейс сохта мешаванд .
  4. Ҳангоми татбиқи интерфейс аз ҷониби синф, калимаи калидӣ implements аст .
  5. Синф, ки интерфейси мушаххасро амалӣ мекунад, бояд ҳама усулҳои абстрактии онро амалӣ кунад ё бояд худро абстракт эълон кунад.
  6. Мақсади асосии истифодаи интерфейсҳо амалӣ намудани полиморфизм (қобorяти an objectҳо барои гирифтани шаклҳои гуногун) мебошад.
  7. Чун қоида, тағирдиҳандаҳои дастрасӣ барои усулҳо дар интерфейс навишта нашудаанд: онҳо ба таври пешфарз оммавӣ мебошанд ва дигар тағирдиҳандаҳои ғайр аз оммаро муайян кардан мумкин нест. Аз Java 9, шумо метавонед тағирдиҳандаҳои хусусиро барои усулҳо истифода баред.
  8. Тағйирёбандаҳои интерфейс бо нобаёнӣ ниҳоии статикӣ мебошанд , ба ибораи дигар, доимӣ: онҳо ҳамеша бояд мустақиман дар интерфейс оғоз карда шаванд.
  9. Шумо наметавонед an objectи интерфейс эҷод кунед.
Ҷавоб ба саволе, ки оё интерфейсҳо метавонанд ниҳоӣ бошанд, албатта не. Дар ниҳоят, моҳияти интерфейсҳо бояд амалӣ карда шаванд. Ва тавре ки ҳамаи мо хеле хуб дар хотир дорем, ниҳоӣ дар сатҳи синф онро мероснашаванда ва дар ҳолати интерфейс ғайриимкон месозад. Чаро ба мо интерфейсе лозим аст, ки амалӣ ва истифода намешавад? Ин дуруст аст - лозим нест! Ва компилятор чунин мешуморад)) Таҳлor саволҳо ва ҷавобҳо аз мусоҳибаҳо барои таҳиягари Java.  Кисми 5 — 4Мафҳум танҳо бо ҷорӣ кардани усулҳои статикӣ дар интерфейсҳо бо Java 8 пайдо шуд, аммо ин далелро тағир надод, ки интерфейс ниҳоӣ шуда наметавонад. Ман дар бораи интерфейсҳо хеле рӯякӣ сӯҳбат кардам, зеро... ин мавзӯи васеъ аст. Муфассалтар дар ин бора дар мақолаҳо дар бораи интерфейсҳо дар Java ва фарқияти байни синфҳои абстрактӣ ва интерфейсҳо хонед .

46. ​​Майдонҳои статикиро дар куҷо оғоз кардан мумкин аст?

Майдонҳои статикӣ метавонанд оғоз карда шаванд:
  • бевосита дар бораи эъломия, тавассути аломати баробар = ;
  • дар блоки оғозкунии статикӣ;
  • дар блоки оғозкунии ғайристатикӣ, аммо шумо бояд фаҳмед, ки ҳар дафъае, ки an object сохта мешавад, ин майдон аз ҷониби ин блоки оғозёбӣ аз нав навишта мешавад;
  • дар конструктори синф. Ҳар дафъае, ки ин конструктор даъват карда мешавад (яъне, вақте ки an object тавассути ин конструктор сохта мешавад), ин майдон аз нав навишта мешавад;
  • дар усулҳои статикӣ;
  • дар усулҳои ғайристатикӣ;
  • дар синфҳои статикӣ ва ғайристатикӣ, маҳаллӣ ва беном.

47. Классњои беном чист?

Синфҳои беном синфҳое мебошанд, ки намуди худро надоранд. Ман дар бораи чӣ гап мезанам? Вақте ки мо дар бораи интерфейсҳо сӯҳбат мекардем, ман қайд кардам, ки шумо an objectи интерфейсро эҷод карда наметавонед: шумо метавонед танҳо an objectи синферо эҷод кунед, ки интерфейсро амалӣ мекунад. Чӣ мешавад, агар шумо намехоҳед интерфейсро дар синф татбиқ кунед, аммо ба шумо ҳанӯз an objectи намуди интерфейс лозим аст? Ва эҳтимоли зиёд, ин як ҳолати ягонаи истифодаи ин an object хоҳад буд. Ва ба шумо лозим нест, ки синфи мукаммали татбиқро эҷод кунед. Шумо ин корро чӣ тавр мекунед? Дуруст! Тавассути синфи беном! Таҳлor саволҳо ва ҷавобҳо аз мусоҳибаҳо барои таҳиягари Java.  Кисми 5 — 5Фарз мекунем, ки мо интерфейси Animal дорем :
public final interface Animal {
   public void voice();
}
Агар мо хоҳем, ки ин интерфейсро тавассути синфи номаълум эҷод кунем:
Animal cat = new Animal() {
   @Override
   public void voice() {
       System.out.println("Meow! Meow! Meow!");
   }
};
Ва он гоҳ шумо метавонед ин an object ва усули татбиқшудаи онро бехатар истифода баред - овоз . Яъне синфи беном ин интерфейс ва тамоми усулҳои абстрактии онро дар ин ҷо ва ҳоло амалӣ мекунад. Дар акси ҳол, мо наметавонем an objectи синфи интерфейс/абстрактӣ эҷод кунем, зеро усулҳои иҷронашуда/абстрактӣ мавҷуданд. Тавре ки ман зикр кардам, синфҳои беном на танҳо барои татбиқи усулҳои абстрактии интерфейс, балки барои татбиқи усулҳои абстрактии синфи абстрактӣ низ истифода мешаванд. Ин равиш барои ҳолатҳое хуб аст, ки an object як маротиба истифода мешавад ё татбиқи методҳои додашуда танҳо як маротиба лозим аст ва зарурати эҷоди синфи алоҳидае нест, ки синф/интерфейси абстрактии заруриро амалӣ кунад. Аммо ман инчунин қайд мекунам, ки истифодаи синфҳои номаълум дар кор як ҳодисаи нодир аст: чун қоида, ҳанӯз ҳам ба синфҳои оддӣ афзалият дода мешавад. Шумо метавонед дар бораи синфҳои беном дар ин мақола бештар хонед .

48. Синфњои ибтидої кадомњоянд?

Ман бошам, ин саволи хеле аҷиб аст ва шояд ин як саволи дом аст, зеро дар Java синфҳои ибтидоӣ вуҷуд надорад: ба ҷуз ин мафҳуми навъҳои ибтидоӣ, ки мо қаблан баррасӣ карда будем. Тавре ки мо дар ёд дорем, дар Java 8 намуди ибтидоӣ вуҷуд доранд - byte , short , int , long , float , double , char , boolean .Таҳлor саволҳо ва ҷавобҳо аз мусоҳибаҳо барои таҳиягари Java.  Кисми 5-6

49. Синфи «печтошка» чист?

Мушкилоти асосии истифодаи намудҳои ибтидоӣ дар Java дар он аст, ки онҳо то ҳол синф нестанд ва Java ҳамчунон забони OOP аст. Яъне барномаҳое, ки бо ин забон навишта шудаанд, ба таъсири мутақобилаи байни an objectҳо табдил меёбанд. Хуб, примитивҳо an object нестанд. Онҳо усулҳо надоранд, ҳатто усулҳои стандартии синфи Object . Хуб, агар ба мо лозим ояд, ки примитивро ҳамчун калид дар Map истифода барем ? Пас шумо бояд усули hashCode -ро даъват кунед . Шумо инчунин метавонед усули баробарро дар он ҷо даъват кунед . Пас чӣ? Лаҳзаҳои хеле ва хеле зиёд вуҷуд доранд, ки дар он ҷо бояд синф вуҷуд дошта бошад, на ибтидоӣ, ки примитивҳоро дар барнома унсурҳои истифоданашуда ва номатлуб месозад, зеро ин худи идеяи OOP-ро нест мекунад. Аммо на ҳама чиз он қадар бад аст, ки ба назар мерасад. Дар ниҳоят, Java дорои мафҳуми бастабандии ибтидоӣ мебошад. Ҳар як навъи ибтидоӣ дорои синфи аналогӣ:
  • byte -> Байт.класс
  • кӯтоҳ -> кӯтоҳ.класс
  • int -> Integer.class
  • long -> Long.class
  • float -> Float.class
  • дучандон -> Double.class
  • char -> Character.class
  • boolean -> Boolean.class
Ин намояндагии навъҳои оддӣ аст, аммо дар шакли синфҳои мукаммал бо як қатор усулҳои гуногун ва функсионалӣ. Барои истифодаи қулайи ин синфҳо мафҳумҳои автобокс ва кушодани қуттиҳо ҷорӣ карда шуданд. Autoboxing - табдor автоматии навъи ибтидоӣ ба синфи аналогӣ дар ҳолати зарурӣ (масалан, int ба Integer ). Кушодани қуттӣ раванди баръакси пештара аст: ба таври худкор табдил додани синфи печони ибтидоӣ ба навъи ибтидоӣ (масалан, Integer ба int ). Ба шарофати ҷорӣ намудани синфҳои ибтидоии бастабандӣ ва равандҳои autoboxing ва unboxing , намудҳои ибтидоӣ тавонистанд аъзои комилҳуқуқи забони OOP - Java шаванд. Таҳлor саволҳо ва ҷавобҳо аз мусоҳибаҳо барои таҳиягари Java.  Кисми 5 — 7Барои гирифтани маълумоти бештар дар бораи ин мавзӯъ, ман тавсия медиҳам, ки ин мақоларо хонед .

50. Синфи Nested чист? Он кай истифода мешавад?

Синфи лона як синфи дарунист, ки узви синфи дигар аст. Дар Java 4 намуди чунин синфҳои дохилӣ мавҷуданд: 1. Синфи дохилӣ Ин навъи синф бевосита дар бадани синфи дигар эълон карда мешавад. Синфи дохorи лона метавонад ба ҳама гуна майдони хусусӣ ё усули намунаи синфи берунӣ дастрасӣ пайдо кунад. Барои мисол, биёед боғи ҳайвонотро созем, ки дар он ҳайвон - зебра дошта бошем:
public class Zoo {
   class Zebra {
       public void toFeed(String food) {
           System.out.println("Дать зебре - " + food);
       }
   }
}
Ҳеҷ чиз мураккаб нест, дуруст? Биёед мисоли эҷоди an objectи синфи дохorро дида бароем:
Zoo.Zebra zebra = new Zoo().new Zebra();
zebra.toFeed("яблоко");
Тавре ки шумо аллакай дидед, сохтани an objectи синфи чаҳорчӯба ҳатмист, ки дар асоси истинодаш шумо метавонед an objectи синфи дохorро эҷод кунед. Ман инчунин мехоҳам қайд намоям, ки синфи дохorи лона наметавонад дорои усулҳои статикӣ ё майдонҳои статикӣ бошад. Ин аз он сабаб аст, ки синфи дохилӣ бо an objectи синфи берунии худ алоқаманд аст ва он наметавонад дар дохor худ ягон усули статикиро эълон кунад. 2. Синфҳои лонаҳои статикӣ Ин синф ба синфи қаблӣ монанд аст, танҳо он дорои тағирдиҳандаи дастрасии статикӣ дар назди эъломияи синф мебошад. Азбаски ин навъи синф ба майдонҳои ғайристатикии синфи беруна дастрасӣ надорад, он бештар ба қисми статикии синфи берунӣ монанд аст, на синфи дохилӣ. Дар ин ҳолат, маълумоти синф ба ҳамаи аъзои статикии синфи берунӣ, ҳатто ба шахсони хусусӣ дастрасӣ дорад. Намунаи синфи лонаҳои статикӣ:
public class Zoo {
   static class Zebra {
       public void toFeed(String food) {
           System.out.println("Дать зебре - " + food);
       }
   }
}
Усули эҷод аз усули қаблӣ каме фарқ мекунад:
Zoo.Zebra zebra = new Zoo.Zebra();
zebra.toFeed("яблоко");
Дар ин ҷо ба мо an objectи синфи берунӣ лозим нест, то an objectи синфи статикии лонаро эҷод кунем. Аз синфи берунӣ, ба мо танҳо намуди он лозим аст, то мо метавонем ҷойгиршавии синфи лонаро пайдо кунем. 3. Синфҳои локалӣ Синфҳои маҳаллӣ синфҳое мебошанд, ки дар дохor бадани метод эълон шудаанд ва эҷод ва истифодаи an objectи синфи локалӣ танҳо дар доираи ин усул имконпазир аст. Мисол:
public class Zoo {
   public void toFeed(String animal, String food) {
       switch(animal){
           case "зебра":
               class Zebra {
                   void toFeedZebra(String food) {
                       System.out.println("Дать зебре - " + food);
                   }
               }
               Zebra zebra = new Zebra();
               zebra.toFeedZebra(food);
               ...
Намунаи истифода:
Zoo zoo = new Zoo();
zoo.toFeed("зебра", "яблоко");
Бе дидани рамзи усули toFeed , шумо ҳатто ба мавҷудияти синфи маҳаллӣ гумонбар намешавед, ҳамин тавр-не? Синфи маҳаллӣ наметавонад статикӣ ё муваққатӣ бошад, аммо онро ҳамчун абстрактӣ ё ниҳоӣ қайд кардан мумкин аст (танҳо Ё, зеро истифодаи ин ду тағирдиҳанда боиси ихтилоф мегардад). 4. Синфҳои беном Мо дар боло дар бораи синфҳои беном сухан карда будем ва тавре дар ёд доред, онҳоро метавон аз ду манбаъ – интерфейсҳо ва синфҳо сохтан мумкин аст. Сабабҳои истифодаи синфҳои статикии дохилӣ ва ғайристатикӣ истифода мешаванд, зеро баъзан беҳтар аст, ки синфҳои хурдро дар дохor синфҳои калонтар ҷойгир кунед ва онҳоро якҷоя нигоҳ доред: бо ин роҳ онҳо ҳамоҳангии баландтар ва ҳадафи умумӣ доранд. Дар асл, истифодаи синфҳои лона инкапсуляцияи codeро зиёд мекунад. Сабаби интихоби синфҳои маҳаллӣ метавонад дар он бошад, ки синфи додашуда танҳо дар як усули ягона истифода мешавад. Дар ин ҳолат, оё лозим аст, ки codeро дар тамоми барнома паҳн кунед? Не. Аммо дар баробари ин илова мекунам, ки дар амалияи худ ягон бор истифодабарии дарсхои махаллиро надидам, зеро зарурати онхо басо бахсталаб аст. Хуб, сабаби истифодаи синфҳои беном метавонад дар он бошад, ки татбиқи мушаххаси интерфейс ё синфи абстрактӣ танҳо як маротиба лозим мешавад, бинобар ин, барои ин эҷод кардани синфи алоҳида ва мукаммал лозим нест. Ба ҷои ин, ба таври оддӣ, мо усул(ҳо)-ро, ки ба мо лозим буд, тавассути як синфи номаълум татбиқ кардем, ин an objectро истифода бурдем ва дар бораи он фаромӯш кардем (хуб, коллектори партовҳо инро дар хотир дошт). Ин ва инТаҳлor саволҳо ва ҷавобҳо аз мусоҳибаҳо барои таҳиягари Java.  Кисми 5 — 8 мақола ба шумо кӯмак мекунад, ки дарсҳои дохorро муфассалтар омӯзед .

51. Класс кадом модификаторҳои дастрасиро дошта метавонад?

Тавре ки мо дар хотир дорем, намудҳои гуногуни синфҳо мавҷуданд ва тағирдиҳандаҳои гуногуни дастрасӣ ба онҳо татбиқ мешаванд:
  • синфи берунӣ метавонад тағирдиҳандаи дастрасии оммавӣ дошта бошад ё бидуни тағирдиҳанда (тағирдиҳандаи пешфарз);
  • синфи дохилӣ ҳама 4 тағирдиҳандаи дастрасиро дастгирӣ мекунад;
  • синфи статикии nested ҳамаи тағирдиҳандаҳои дастрасиро ба истиснои protected дастгирӣ мекунад , зеро ин тағирдиҳанда меросро дар назар дорад, ки хилофи узви статикии синф аст (унсурҳои статикӣ мерос гирифта намешаванд);
  • синфи маҳаллӣ метавонад танҳо як тағирдиҳандаи пешфарз дошта бошад (яъне тағирдиҳанда умуман нест);
  • синфи беном : агар эъломияи навъи синф мавҷуд набошад, он гоҳ тағирдиҳандаи дастрасӣ умуман вуҷуд надорад.
Дар ин ҷо мо имрӯз қатъ мекунем. То боз дид!Таҳлor саволҳо ва ҷавобҳо аз мусоҳибаҳо барои таҳиягари Java.  Кисми 5 — 9
Дигар маводҳо дар силсила:
Шарҳҳо
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION