Преузмите ПДФ
Саставили смо најчешће постављана питања и одговоре на Јава интервјуе који ће вам помоћи да се припремите за основна Јава питања која вам анкетар може поставити током интервјуа. На овој листи основних интервјуа са Јава Јава-ом покрили смо сва најчешће постављана основна и напредна Цоре Интервју питања са детаљним одговорима који ће вам помоћи да разрешите разговор за посао.
Следећа листа садржи 100 важних основних питања за Јава интервјуе за свеже, као и питања за Јава интервјуе и одговоре за искусне програмере који ће им помоћи да се припреме за интервју. Овај детаљан водич за питања са интервјуа за програмирање на Јави помоћи ће вам да лако разрешите интервју за посао.
Основна питања и одговори за интервју за Јава за свеже и искусније
К1. Која је разлика између унутрашње класе и подкласе?
Одговори: Унутрашња класа је класа која је угнежђена у другој класи. Унутрашња класа има права приступа за класу која је угнежђује и може приступити свим променљивим и методама дефинисаним у спољној класи.
Подкласа је класа која наслеђује другу класу која се назива супер класа. Подкласа може приступити свим јавним и заштићеним методама и пољима своје супер класе.
К2. Који су различити спецификатори приступа за Јава класе?
Одговори: У Јави су спецификатори приступа кључне речи које се користе пре имена класе која дефинише опсег приступа. Типови спецификатора приступа за класе су:
1. Јавно: класа, метода, поље је доступно са било ког места.
2. Заштићени: Методи, пољу се може приступити из исте класе којој припадају или из поткласе и из класе истог пакета, али не и споља.
3. Подразумевано: Методи, пољу, класи се може приступити само из истог пакета, а не и изван његовог изворног пакета.
4. Приватно: Методу, пољу се може приступити из исте класе којој припадају.
К3. Која је сврха статичких метода и статичких променљивих?
Одговори: Када постоји захтев за дељењем методе или променљиве између више објеката класе, уместо да се праве засебне копије за сваки објекат, користимо статичку кључну реч да бисмо направили методу или променљиву која се дели за све објекте.
К4. Шта је инкапсулација података и који је њен значај?
Одговори: Инкапсулација је концепт објектно оријентисаног програмирања за комбиновање својстава и метода у једној јединици.
Инкапсулација помаже програмерима да следе модуларни приступ развоју софтвера, јер сваки објекат има свој сет метода и променљивих и служи својим функцијама неовисно о другим објектима. Капсулација такође служи за скривање података.
К5. Шта је синглетон класа? Дајте практични пример његове употребе.
Синглетон класа у јави може имати само једну инстанцу и стога све њене методе и променљиве припадају само једној инстанци. Концепт Синглетон класе користан је у ситуацијама када постоји потреба за ограничавањем броја објеката за класу.
Најбољи пример појединачног сценарија коришћења је када постоји ограничење само једне везе са базом података због неких ограничења покретачких програма или због било каквих проблема са лиценцирањем.
К6. Шта су петље у Јави? Које су три врсте петљи?
Одговори: Лоопинг се користи у програмирању за опетовано извршавање израза или блока израза. У Јави постоје три врсте петљи:
1) За петље
Јер петље се користе у јави за вишекратно извршавање израза, задати број пута. Јер се петље користе када је програмеру познат колико је пута потребно извршити изразе.
2) Док петље
Петља вхиле се користи када одређене наредбе треба извршавати више пута док се не испуни услов. У вхиле петљама прво се проверава стање пре извршавања наредби.
3) Урадите док петље
Изводи док је петља иста као и петља Вхиле са само разликом што се услов проверава након извршавања блока наредби. Стога се у случају петље до вхиле наредбе извршавају најмање једном.
П7: Шта је бесконачна петља? Како се проглашава бесконачна петља?
Одговор: Бесконачна петља ради без икаквих услова и ради бесконачно. Бесконачна петља се може прекинути дефинисањем било које логике прекида у телу блокова израза.
Бесконачна петља се декларише на следећи начин:
for (;;){// Statements to execute// Add any loop breaking logic}
К8. Која је разлика између наредбе цонтинуе и бреак?
Одговори: прекини и настави две су важне кључне речи које се користе у петљама. Када се кључна реч бреак користи у петљи, петља се одмах прекида док се када се користи кључна реч цонтинуе, тренутна итерација прекида и петља се наставља са следећом итерацијом.
У доњем примеру, петља се прекида када бројач достигне 4.
for (counter = 0; counter & lt; 10; counter++)system.out.println(counter);if (counter == 4) {break;}}
У доњем примеру када бројач достигне 4, петља прелази на следећу итерацију и сви изрази након кључне речи цонтинуе се прескачу за тренутну итерацију.
for (counter = 0; counter < 10; counter++)system.out.println(counter);if (counter == 4) {continue;}system.out.println("This will not get printed when counter is 4");}
П9. Која је разлика између двоструких и променљивих променљивих у Јави?
Одговор: У јави, флоат узима 4 бајта у меморији, док Доубле узима 8 бајта у меморији. Флоат је децимални број с покретном зарезом са једном прецизношћу, док је Доубле децимални број са двоструком прецизношћу.
К10. Шта је завршна кључна реч у Јави? Дати пример.
Одговори: У јави се константа декларише помоћу кључне речи Финал. Вредност се може доделити само једном, а након додељивања вредност константе не може се променити.
У доњем примеру, константа са именом цонст_вал је декларисана и додељена јој је вредност:
Приватно финале инт цонст_вал = 100
Када се метода прогласи коначном, поткласе је НЕ могу надјачати. Ова метода је бржа од било које друге методе, јер се рјешавају у складу с временом.
Када се класа прогласи коначном, не може се подкласирати. Пример Стринг, Интегер и друге класе омотача.
К11. Шта је трокраки оператор? Дати пример.
Одговор: Тернарни оператор, који се назива и условни оператор, користи се за одлучивање коју вредност ће доделити променљивој на основу процене Булове вредности. Означава се као?
У доњем примеру, ако је ранг 1, статусу се додељује вредност „Готово“, остало „На чекању“.
public class conditionTest {public static void main(String args[]) {String status;int rank = 3;status = (rank == 1) ? "Done" : "Pending";System.out.println(status);}}
П12: Како можете генерирати случајне бројеве у Јави?
Анс:
- Користећи Матх.рандом () можете да генеришете случајне бројеве у опсегу већем или једнаком 0,1 и мањем од 1,0
- Коришћење класе Рандом у пакету јава.утил
К13. Шта је подразумевано кућиште прекидача? Наведи пример.
Одговори: У наредби пребацивања, подразумевани случај се извршава када се не подудара ниједан други услов прекидача. Подразумевани случај је опционални случај. Може се декларисати само када су сви остали случајеви прекидача кодирани.
У доњем примеру, када оцена није 1 или 2, користи се подразумевани случај.
public class switchExample {int score = 4;public static void main(String args[]) {switch (score) {case 1:system.out.println("Score is 1");break;case 2:system.out.println("Score is 2");break;default:system.out.println("Default Case");}}}
К14. Која је основна класа у Јави из које су све класе изведене?
Одговори: јава.ланг.објецт
К15. Може ли метода маин () у Јави вратити било какве податке?
Одговори: У јави, метода маин () не може вратити никакве податке и стога се увек декларише са воид типом повратка.
К16. Шта су Јава пакети? Какав је значај пакета?
Одговор: У Јави, пакет је колекција класа и интерфејса који су повезани у пакету јер су међусобно повезани. Коришћење пакета помаже програмерима да модуларишу код и групишу га за исправну поновну употребу. Једном када је пакет упакован у Пацкагес, може се увести у друге класе и користити.
К17. Можемо ли класу прогласити апстрактном, а да не поседујемо ниједну апстрактну методу?
Одговори: Да, можемо створити апстрактну класу користећи апстрактну кључну реч пре назива класе, чак и ако она нема ниједан апстрактни метод. Међутим, ако класа има чак и једну апстрактну методу, она мора бити проглашена апстрактном, у супротном ће се појавити грешка.
К18. Која је разлика између апстрактне класе и интерфејса у Јави?
Одговори: Примарна разлика између апстрактне класе и интерфејса је та што интерфејс може да поседује само декларацију јавних статичких метода без конкретне имплементације, док апстрактна класа може да има чланове са било којим спецификаторима приступа (јавни, приватни итд.) Са или без конкретне имплементације.
Друга кључна разлика у употреби апстрактних класа и интерфејса је та што класа која имплементира интерфејс мора да имплементира све методе интерфејса, док класа која наслеђује апстрактну класу не захтева имплементацију свих метода своје супер класе.
Класа може да имплементира више интерфејса, али може да прошири само једну апстрактну класу.
К19. Које су импликације интерфејса на апстрактне класе?
Одговори: Интерфејси имају спорије перформансе у поређењу са апстрактним класама јер су за интерфејсе потребне додатне индиректности. Још један кључни фактор који програмери морају узети у обзир је да било која класа може проширити само једну апстрактну класу, док класа може да имплементира много интерфејса.
Коришћење интерфејса такође додатно оптерећује програмере јер сваки пут када се интерфејс примени у класи; програмер је приморан да примени сваки метод интерфејса.
К20. Да ли Увоз пакета увози своје подпакете и на Јаву?
Одговори: У јави, када се пакет увози, његови подпакети се не увозе и програмер их мора увести одвојено ако је потребно.
На пример, ако програмер увезе пакет универзитета. *, Учитавају се све класе у пакету названом универзитет, али се не учитавају класе из потпакета. Да би учитао класе из свог под-пакета (рецимо одељења), програмер га мора експлицитно увести на следећи начин:
Увоз универзитетског одељења. *
К21. Можемо ли главни метод наше класе прогласити приватним?
Одговори: У јави, главни метод мора бити јавни статички да би се било која апликација правилно покренула. Ако је главна метода декларисана као приватна, програмер неће добити никакву грешку при компилацији, међутим, неће се извршити и даће грешку у току извршавања.
К22. Како можемо проследити аргумент функцији референцом уместо пропуштањем вредности?
Одговори: У јави функцију можемо проследити аргументу само вредности, а не референцом.
К23. Како се објекат сериализује у јави?
Одговори: У јави, за претварање објекта у ток бајтова сериализацијом, класа имплементира интерфејс са именом Сериализабле. Сви објекти класе која имплементира интерфејс који се може серирати се сериализују и њихово стање се чува у току бајтова.
К24. Када би требало да користимо сериализацију?
Одговори: Серијализација се користи када је потребно пренос података преко мреже. Користећи сериализацију, стање објекта се чува и претвара у ток бајтова. Ток бајтова се преноси преко мреже и објекат се поново креира на одредишту.
К25. Да ли је обавезно да Блок покушаја прати Цатцх Блоцк у Јави за руковање изузецима?
Одговори: Покушај блока мора бити праћен блоком Ухвати или Коначно или оба. Сваки изузетак избачен из покушај блока мора бити ухваћен у блоку ухватити или било који специфични задаци који треба извршити пре него што абортус кода се стави у блок Коначно.
К26. Да ли постоји било који начин да прескочите коначно блок изузетака чак и ако се неки изузетак догоди у блоку изузетака?
Одговори: Ако се изузме изузетак у блоку Три, контрола прелази у цатцх блоцк ако постоји да би се коначно блокирао. Коначни блок се увек извршава када се догоди изузетак и једини начин да се избегне извршење било које наредбе у блоку Коначни је присилно прекидање кода писањем следећег ретка кода на крају покушај блока:
System.exit(0);
К27. Када се позове конструктор класе?
Одговори: Конструктор класе се позива сваки пут када се објекат креира новом кључном речи.
На пример, у следећој класи се креирају два објекта помоћу нове кључне речи и стога се конструктор позива два пута.
public class const_example {const_example() {system.out.println("Inside constructor");}public static void main(String args[]) {const_example c1 = new const_example();const_example c2 = new const_example();}}
К28. Може ли класа имати више конструктора?
Одговори: Да, класа може имати више конструктора са различитим параметрима. Који се конструктор користи за креирање објеката, зависи од аргумената прослеђених приликом креирања објеката.
К29. Можемо ли заменити статичке методе класе?
Одговор: Не можемо да заменимо статичке методе. Статичке методе припадају класи, а не појединачним објектима и решавају се у време компилације (не током извршавања). Чак и ако покушамо да заменимо статичку методу, нећемо добити грешку у комплитацији, нити утицај надјачавања приликом покретања код.
К30. У следећем примеру, који ће бити излаз?
public class superclass {public void displayResult() {system.out.println("Printing from superclass");}}public class subclass extends superclass {public void displayResult() {system.out.println("Displaying from subClass");super.displayResult();}public static void main(String args[]) {subclass obj = new subclass();obj.displayResult();}}
Одговори : Излаз ће бити:
Приказ из подкласе
Приказ из суперкласе
К31. Да ли је Стринг тип података у јави?
Одговори: Стринг није примитивни тип података у јави. Када се низ креира у јави, то је заправо објекат класе Јава.Ланг.Стринг који се креира. Након креирања овог стринг објекта, све уграђене методе класе Стринг могу се користити на стринг објекту.
К32. У доњем примеру, колико Стринг објеката се креира?
String s1="I am Java Expert";String s2="I am C Expert";String s3="I am Java Expert";
Одговори: У горњем примеру су креирана два објекта класе Јава.Ланг.Стринг. с1 и с3 су референце на исти објекат.
К33. Зашто се стрингови у Јави називају непроменљивим?
Одговори: У Јава-и се стринг објекти називају непроменљивим, пошто једном вредност буде додељена низу, не може се променити и ако се промени, креира се нови објекат.
У доњем примеру, референца стр односи се на објект низа који има вредност „Валуе оне“.
String str="Value One";
Када му се додели нова вредност, креира се нови објект Стринг и референца се премешта у нови објекат.
str="New Value";
К34. Која је разлика између низа и вектора?
Одговори: Низ групише податке истог примитивног типа и статичне је природе, док су вектори динамичке природе и могу да садрже податке различитих типова података.
К35. Шта је вишенитни навој?
Одговори: Вишеструко навоја је концепт програмирања за истовремено покретање више задатака у оквиру једног програма. Теме деле исти процесни низ и раде паралелно. Помаже у побољшању перформанси било ког програма.
К36. Зашто се Руннабле Интерфаце користи у Јави?
Одговори: Интерфејс који се може покренути користи се у јави за примену апликација са више нити. Јава.Ланг.Руннабле интерфејс имплементира класа за подршку више навоја.
К37. Која су два начина примене вишеструких навоја у Јави?
Одговори: Вишенавојне апликације могу се развити на Јави коришћењем било које од следеће две методологије:
1. Коришћењем интерфејса Јава.Ланг.Руннабле. Класе имплементирају овај интерфејс да би омогућили вишеструко навојање. У овом интерфејсу постоји метода Рун () која је примењена.
2. Писањем класе која проширује класу Јава.Ланг.Тхреад.
К38. Када је потребно много промена у подацима, која би предност требало користити? Стринг или СтрингБуффер?
Одговори: Будући да су СтрингБуфферс динамичне природе и можемо променити вредности СтрингБуффер објеката за разлику од Стринга који је непроменљив, увек је добар избор користити СтрингБуффер када се подаци превише мењају. Ако у таквом случају користимо Стринг, за сваку промену података створиће се нови Стринг објекат који ће бити додатни трошкови.
К39. Која је сврха коришћења Бреак у сваком случају Изјаве о пребацивању?
Одговори: Бреак се користи након сваког случаја (осим последњег) у комутатору, тако да се код прекида након важећег случаја и не тече ни у следећим случајевима.
Ако се бреак не користи након сваког случаја, сви случајеви након важећег случаја такође се извршавају што резултира погрешним резултатима.
К40. Како се сакупљање смећа врши на Јави?
Одговори: У Јава-и, када се на објекат више не упућује, врши се сакупљање смећа и објекат се аутоматски уништава. За аутоматско прикупљање смећа јава позива или Систем.гц () методу или Рунтиме.гц () методу.
К41. Како можемо извршити било који код чак и пре главне методе?
Одговори: Ако желимо да извршимо било који израз пре стварања објеката у време учитавања класе, можемо користити статички блок кода у класи. Све наредбе унутар овог статичког блока кода извршиће се једном у тренутку учитавања класе, чак и пре стварања објеката у главној методи.
К42. Може ли класа истовремено бити супер класа и поткласа? Наведи пример.
Одговори: Ако се користи хијерархија наслеђивања, класа може истовремено бити супер класа за другу класу и поткласа за другу.
У примеру испод, класа континент је подкласа светске класе и то је супер класа сеоске класе.
public class world {… .}public class continenet extends world {… }public class country extends continent {… .}
К43. Како се креирају објекти класе ако у класи није дефинисан ниједан конструктор?
Одговори: Чак и ако у јава класи није дефинисан експлицитни конструктор, објекти се успешно креирају јер се подразумевани конструктор имплицитно користи за креирање објеката. Овај конструктор нема параметре.
К44. У мулти-тхреадингу како можемо осигурати да ресурс не користи више нити истовремено?
Одговори: У вишеструким навојима, приступ ресурсима који се деле између више нити може се контролисати коришћењем концепта синхронизације. Користећи синхронизовану кључну реч, можемо да обезбедимо да само једна нит може истовремено да користи заједнички ресурс, а друге да могу да контролишу ресурс тек када се ослободи друге која га користи.
К45. Можемо ли више пута назвати конструктор класе за објекат?
Одговор: Конструктор се позива аутоматски када креирамо објекат помоћу нове кључне речи. Позива се само једном за објекат у време стварања објекта и стога не можемо поново да позовемо конструктор за објекат након његовог стварања.
К46. Постоје две класе под називом цлассА и цлассБ. Обе класе су у истом пакету. Може ли објект класе Б да приступи приватном члану класе А?
Одговори: Приватни чланови класе нису доступни изван опсега те класе и било која друга класа чак ни у истом пакету не може да им приступи.
К47. Да ли можемо да имамо две методе у класи са истим именом?
Одговори: Можемо дефинисати две методе у класи са истим именом, али са различитим бројем / типом параметара. Који ће се метод позвати зависиће од прослеђених параметара.
На пример, у доњој класи имамо две методе штампе са истим именом, али различитим параметрима. У зависности од параметара, назваће се одговарајући:
public class methodExample {public void print() {system.out.println("Print method without parameters.");}public void print(String name) {system.out.println("Print method with parameter");}public static void main(String args[]) {methodExample obj1 = new methodExample();obj1.print();obj1.print("xx");}}
К48. Како можемо да направимо копију Јава објекта?
Одговори: Концепт клонирања можемо користити за стварање копије објекта. Користећи клон, креирамо копије са стварним стањем објекта.
Цлоне () је метода Цлонеабле интерфејса и стога Цлонеабле интерфејс треба применити за прављење копија објеката.
К49. Каква је корист од коришћења наследства?
Одговор: Кључна предност коришћења наслеђивања је поновна употреба кода, јер наслеђивање омогућава подкласама да поново користе код своје супер класе. Полиморфизам (проширивост) је још једна велика предност која омогућава увођење нове функционалности без утицаја на постојеће изведене класе.
К50. Који је задати спецификатор приступа за променљиве и методе класе?
Одговори: Подразумевани спецификатор приступа за променљиве и метод заштићен је пакетом, тј. Променљиве и класа су доступне било којој другој класи, али у истом пакету, а не изван пакета.
К51. Наведите пример употребе показивача у Јава класи.
Одговори: На Јави нема показивача. Дакле, не можемо користити концепт показивача у Јави.
К52. Како можемо ограничити наслеђивање за класу тако да ниједна класа не може бити наслеђена из ње?
Одговори: Ако желимо да класа не буде даље проширена ниједном класом, можемо користити кључну реч Финал са именом класе.
У следећем примеру, класа Стоне је Финал и не може се продужити
public Final Class Stone {// Class methods and Variables}
К53. Који је опсег приступа спецификатора за заштићени приступ?
Одговори: Када је метода или променљива декларисана са спецификованим заштићеним приступом, она постаје доступна у истој класи, било којој другој класи истог пакета, као и подкласи.
Модификатор |
Класа |
Пакет |
Подкласа |
Свет |
јавно |
И. |
И. |
И. |
И. |
заштићен |
И. |
И. |
И. |
Н. |
без модификатора |
И. |
И. |
Н. |
Н. |
приватни |
И. |
Н. |
Н. |
Н. |
К54. Која је разлика између Стацк-а и Куеуе-а?
Одговори: И стек и ред се користе као резервирано место за прикупљање података. Примарна разлика између стека и реда је у томе што се стог заснива на принципу Ласт ин Фирст оут (ЛИФО), док се ред заснива на ФИФО (Фирст Ин Фирст Оут) принципу.
К55. У јави, како можемо да забранимо сериализацију променљивих?
Одговори: Ако желимо да одређене променљиве класе не буду сериализоване, можемо користити кључну реч пролазно док их декларишемо. На пример, променљива транс_вар у наставку је пролазна променљива и не може се сериализовати:
public class transientExample {private transient trans_var;// rest of the code}
К56. Како примитивне типове података можемо користити као објекте?
Одговори: Примитивним типовима података попут инт може се руковати као објектима помоћу њихових одговарајућих класа омотача. На пример, Интегер је класа омотача за примитивни тип података инт. На класу омотача можемо применити различите методе, као и било који други објекат.
К57. Које врсте изузетака су уочене у време компајлирања?
Одговори: Проверени изузеци се могу ухватити у време састављања програма. Проверени изузеци морају се решавати помоћу блока три цатцх у коду да би се успешно компајлирао код.
К58. Опишите различита стања нити.
Одговори: Нит у Јави може бити у било којем од следећих стања:
- Спремно: Када се нит креира, она је у стању спреман.
- Покретање: Нит која се тренутно извршава је у активном стању.
- Чекање: Нит која чека да друга нит ослободи одређене ресурсе је у стању чекања.
- Мртва: Нит која је замрла након извршења је у мртвом стању.
К59. Да ли можемо да користимо подразумевани конструктор класе чак и ако је дефинисан експлицитни конструктор?
Одговор: Јава пружа подразумевани конструктор без аргумената ако у Јава класи није дефинисан експлицитни конструктор. Али ако је дефинисан експлицитни конструктор, подразумевани конструктор се не може позвати и програмер може користити само оне конструкторе који су дефинисани у класи.
К60. Можемо ли заменити методу користећи исто име и аргументе, али различите типове повратка?
Одговори: Основни услов замене методе је да име методе, аргументи као и тип повратка морају бити потпуно исти као и онај методе који се поништава. Стога употреба другог типа повратка не замењује методу.
П61.Који ће бити излаз следећег комада кода?
public class operatorExample {public static void main(String args[]) {int x = 4;system.out.println(x++);}}
Одговори: У овом случају се користи постфик ++ оператор који прво враћа вредност, а затим се увећава. Отуда ће излаз бити 4.
К61. Особа каже да је успешно саставио јава класу, а да у њој није ни постојала главна метода? Да ли је могуће?
Одговор: главна метода је улазна тачка Јава класе и потребна је за извршавање програма; класа се успешно компајлира чак и ако нема главни метод. Не може се покренути.
К62. Можемо ли позвати не-статичку методу изнутра статичном методом?
Одговори: Нестатичке методе су у власништву објеката класе и имају опсег на нивоу објекта, а да би се нестичке методе позвале из статичког блока (као из статичке главне методе), треба створити објекат класе први. Затим се коришћењем референце на објект могу позвати ове методе.
К63. Које су две променљиве окружења које се морају поставити да би се покренули било који Јава програми?
Одговор: Јава програми могу се извршавати у машини само када су правилно постављене следеће две променљиве околине:
- Променљива ПАТХ
- Променљива ЦЛАССПАТХ
К64. Могу ли се променљиве користити у Јави без иницијализације?
Одговори: У Јави, ако се променљива користи у коду без претходне иницијализације важећом вредношћу, програм се не компајлира и даје грешку јер променљивим вредностима у Јави није додељена подразумевана вредност.
К65. Може ли се класа у Јави наследити из више класа?
Одговори: У Јави се класа може извести из само једне класе, а не из више класа. Јава не подржава више наслеђа.
К66. Може ли конструктор имати другачије име од назива класе у Јави?
Одговор: Конструктор у Јави мора имати исто име као и име класе, а ако је име другачије, не делује као конструктор и компајлер то сматра нормалном методом.
К67. Какав ће бити излаз Роунд (3.7) и Цеил (3.7)?
Одговори: Роунд (3.7) враћа 4, а Цеил (3.7) враћа 4.
П68: Да ли можемо да користимо гото у Јави да бисмо прешли на одређену линију?
Одговор: У Јави не постоји кључна реч гото и јава не подржава ову функцију преласка на одређену означену линију.
К69. Може ли се мртва нит поново покренути?
Одговори: У Јави се нит која је у мртвом стању не може поново покренути. Не постоји начин да се поново покрене мртва нит.
К70. Да ли је следећа декларација класе тачна?
Анс:
public abstract final class testClass {// Class methods and variables}
Одговори: Горња декларација класе је нетачна јер апстрактна класа не може бити проглашена коначном.
К71. Да ли је ЈДК потребан на свакој машини за покретање Јава програма?
Одговор: ЈДК је развојни комплет Јаве и потребан је само за развој и за покретање Јава програма на машини, ЈДК није потребан. Потребан је само ЈРЕ.
К72. Која је разлика између поређења обављеног методом једнакости и оператора ==?
Одговори: У Јави се метода екуалс () користи за упоређивање садржаја два стринг објекта и враћа труе ако два имају исту вредност, док оператор == упоређује референце два стринг објекта.
У следећем примеру, екуалс () враћа труе јер два објекта низа имају исте вредности. Међутим, оператор == враћа фалсе јер се оба објекта низа позивају на различите објекте:
public class equalsTest {public static void main(String args[]) {String str1 = new String("Hello World");String str2 = new String("Hello World");if (str1.equals(str2)){ // this condition is trueSystem.out.println("str1 and str2 are equal in terms of values");}if (str1 == str2) {//This condition is trueSystem.out.println("Both strings are referencing same object");} else{// This condition is NOT trueSystem.out.println("Both strings are referencing different objects");}}}
К73. Да ли је могуће дефинисати метод у Јава класи, али обезбедити његову примену у коду другог језика попут Ц?
Одговори: Да, то можемо учинити коришћењем изворних метода. У случају развоја заснованог на изворним методама, ми дефинишемо јавне статичке методе у нашој Јава класи без његове имплементације, а затим се имплементација врши на другом језику као што је Ц одвојено.
К74. Како су деструктори дефинисани у Јави?
Одговор: У Јави у класи нису дефинисани деструктори, јер то нема потребе. Јава има свој механизам за сакупљање смећа који посао обавља аутоматски уништавајући објекте на које више нема референце.
К75. Може ли променљива истовремено бити локална и статична?
Одговори: Ниједна променљива не може истовремено бити статичка као и локална. Дефинисање локалне променљиве као статичке даје грешку при компилацији.
К76. Можемо ли имати статичке методе у интерфејсу?
Одговори: Статичке методе се не могу надјачати ни у једној класи, док су било које методе у интерфејсу подразумевано апстрактне и требало би да буду примењене у класама које имплементирају интерфејс. Дакле, нема смисла имати статичке методе у интерфејсу на Јави.
К77. У класи која имплементира интерфејс, можемо ли променити вредност било које променљиве дефинисане у интерфејсу?
Одговори: Не, не можемо променити вредност било које променљиве интерфејса у класи примене, јер су све променљиве дефинисане у интерфејсу подразумевано јавне, статичке и Финал и финал променљиве су попут константи које се касније не могу променити.
К78. Да ли је тачно рећи да због функције сакупљања смећа у Јави јава програм никада не остаје без меморије?
Одговор: Иако Јава омогућава аутоматско сакупљање смећа, то не осигурава да Јава програм не остане без меморије, јер постоји могућност да се стварање Јава објеката врши бржим темпом у односу на сакупљање смећа што резултира попуњавање свих расположивих ресурса меморије.
Дакле, сакупљање смећа помаже у смањењу шанси да програм остане без меморије, али то не осигурава.
К79. Да ли можемо имати било који други тип повратка осим воид за главни метод?
Одговори: Не, главни метод класе Јава може имати само тип враћања воид да би се програм успешно извршио.
Без обзира на то, ако апсолутно морате вратити вредност на по завршетку главне методе, можете користити Систем.екит (инт статус)
К80. Желим да поново досегнем и користим објекат након што се сакупи смеће. Како је то могуће?
Одговори: Када сакупљач смећа уништи објекат, он више не постоји на гомили и не може му се поново приступити. Не постоји начин да се то поново референцира.
К81. У Јава програмирању нити, који метод је неопходна имплементација за све нити?
Одговори: Рун () је метода Руннабле интерфејса коју морају имплементирати све нити.
К82. Желим да контролишем везе базе података у свом програму и желим да само једна нит може истовремено да успостави везу са базом података. Како могу применити ову логику?
Одговори: Ово се може применити коришћењем концепта синхронизације. Код повезан са базом података може се сместити у методу која синхронизује кључну реч тако да јој истовремено може приступити само једна нит.
К83. Како програмер може ручно да изузме изузетак?
Одговори: Да би се ручно убацио изузетак у блок кода, користи се кључна реч тхров. Тада се овај изузетак хвата и обрађује у блоку за улов.
public void topMethod() {try {excMethod();} catch (ManualException e) {}}public void excMethod {String name = null;if (name == null) {throw (new ManualException("Exception thrown manually ");}}
К84. Желим да се моја класа развија на такав начин да ниједна друга класа (чак ни изведена класа) не може да креира своје објекте. Како то могу?
Одговор: Ако конструктор класе прогласимо приватним, неће јој бити доступна ниједна друга класа, па стога ниједна друга класа неће моћи да га покрене, а формирање њеног објекта биће ограничено само на себе.
К85. Како се објекти чувају у Јави?
Одговори: У јави, сваки објекат када је створен добија меморијски простор из гомиле. Када сакупљач смећа уништи објекат, простор који му је додељен из гомиле поново се додељује гомили и постаје доступан за све нове објекте.
К86. Како можемо пронаћи стварну величину предмета на гомили?
Одговори: У јави не постоји начин да се сазна тачна величина објекта на гомили.
К87. Који ће од следећих разреда имати више меморије?
Класа А: Три методе, четири променљиве, нема објекта
Класа Б: Пет метода, три променљиве, нема објекта
Одговори: Меморија се не додељује пре стварања објеката. Будући да за обе класе не постоје створени објекти, па ни меморија није додељена на хрпу ни за једну класу.
К88. Шта се догађа ако се у програму не обрађује изузетак?
Одговори: Ако се у програму не обрађује изузетак помоћу блокова три цатцх, програм се прекида и ниједан се израз не извршава након израза који је изазвао бацање изузетака.
К89. Имам више конструктора дефинисаних у класи. Да ли је могуће позвати конструктор из тела другог конструктора?
Одговори: Ако класа има више конструктора, могуће је позвати један конструктор из тела другог помоћу овог () .
К90. Шта подразумева анонимни час?
Одговори: Анонимна класа је класа дефинисана без икаквог имена у једном реду кода помоћу нове кључне речи.
На пример, у доњем коду дефинисали смо анонимну класу у једном реду кода:
public java.util.Enumeration testMethod(){return new java.util.Enumeration(){@Overridepublic boolean hasMoreElements(){// TODO Auto-generated method stubreturn false;}@Overridepublic Object nextElement(){// TODO Auto-generated method stubreturn null;}}
К91. Постоји ли начин за повећање величине низа након његове декларације?
Одговори: Низови су статични и након што одредимо његову величину, не можемо их променити. Ако желимо да користимо такве колекције тамо где ће нам можда бити потребна промена величине (броја ставки), требало би да преферирамо вектор над низом.
К92. Ако апликација има више класа, да ли је у реду имати главни метод у више класа?
Одговори: Ако постоји главни метод у више класа у јава апликацији, то неће узроковати проблеме јер ће улазна тачка за било коју апликацију бити одређена класа и код ће почети од главне методе само те класе.
К93. Желим да сачувам податке о објектима за каснију употребу. Који је најбољи приступ за то?
Одговори: Најбољи начин за задржавање података за будућу употребу је коришћење концепта сериализације.
К94. Шта је локални разред у Јави?
Одговор: У Јави, ако дефинишемо нову класу унутар одређеног блока, она се назива локална класа. Таква класа има локални опсег и није употребљива изван блока тамо где је дефинисана.
К95. Стринг и СтрингБуффер представљају објекте Стринг. Можемо ли упоредити Стринг и СтрингБуффер у Јави?
Одговори: Иако и Стринг и СтрингБуффер представљају Стринг објекте, не можемо их међусобно упоређивати и ако покушамо да их упоредимо, добићемо грешку.
К96. Који АПИ нуди Јава за операције на скупу објеката?
Одговор: Јава нуди АПИ за прикупљање који пружа многе корисне методе које се могу применити на скуп објеката. Неке од важних класа које пружа Цоллецтион АПИ укључују АрраиЛист, ХасхМап, ТрееСет и ТрееМап.
К97. Да ли можемо пребацити било који други тип на Боолеан Типе са ливењем типа?
Одговор: Не, не можемо пребацити ниједан други примитивни тип на логички тип података нити логички тип података на било који други примитивни тип података.
К98. Да ли можемо да користимо различите типове повратка за методе када су надјачани?
Одговори: Основни захтев надјачавања метода у Јави је да надјачана метода има исто име и параметре. Али метод се може надјачати другим типом повратка све док нови тип повратка проширује оригинал.
На пример, метода враћа референтни тип.
Class B extends A {A method(int x) {//original method}B method(int x) {//overridden method}}
К99. Која је основна класа свих класа изузетака?
Одговор : У Јави је Јава.ланг.Тхровабле супер класа свих класа изузетака и све класе изузећа су изведене из ове основне класе.
К100. Који је редослед позива конструктора у наслеђивање?
Одговори: У случају наслеђивања, када се креира нови објекат изведене класе, прво се позива конструктор супер класе, а затим се позива конструктор изведене класе.
Припремите се за интервју за посао !!! Прођите кроз Јава туториал да бисте се боље припремили.
Ова детаљна пдф питања о Јава интервјуу помоћи ће вам да разјасните недоумице око питања о Јава интервјуу, а такође ће вам помоћи да разбијете интервју.