Върнете се в началото 22 Java Въпроси за интервю за модели на дизайн (2025)
Тук са Java Интервю с въпроси и отговори на Design Patterns за по-свежи и опитни кандидати, за да получат мечтаната работа.
Дизайнерски модели Въпроси и отговори за интервю за първокурсници
1) Обяснете какво е Java Модел на дизайн?
Моделът на проектиране е независима от езика стратегия за решаване на общ проблем с обектно-ориентирано проектиране. Той описва как да структурирате класове, за да отговорите на дадено изискване.
2) Обяснете какво е креативни дизайнерски модели и фабричен модел?
Творчески дизайн модел: Този модел се използва за дефиниране и описание на това как обектите се създават по време на инстанциране на класа.
Фабричен модел: Фабричният модел се използва за създаване на обект, без да се излага логиката на създаване на клиента и се отнася до новосъздадения обект, използвайки общ интерфейс.
👉 Безплатно изтегляне на PDF: Java Дизайнерски модели Въпроси и отговори за интервю
3) Кой модел на проектиране се използва за получаване на начин за достъп до елементите на обект на колекция по последователен начин?
Моделът на итератор се използва за получаване на начин за достъп до елементите на обект на колекция по последователен начин.
4) Кога се използва шаблонът за локатор на услуги?
Когато искаме да локализираме различни услуги с помощта на JNDI, ние използваме модел на локатор на услуги.
5) Споменете по колко начина можете да създадете единичен модел?
За създаване на единични обекти има два известни начина
- Мързелив натоварване
- Нетърпеливо зареждане
6) Споменете кой модел се използва, когато трябва да отделим абстракция от нейната реализация?
Когато искаме да отделим абстракция от нейната реализация, за да могат две да варират независимо, използваме мостов модел.
7) Споменете кой модел на проектиране ще бъде полезен за добавяне на нова функционалност към съществуващ обект?
Моделът на декоратора позволява на потребителя да добави нова функционалност към съществуващ обект, без да променя структурата му.
8) Обяснете как можете да създадете клас Singleton в Java?
Това е процес от две стъпки,
- Първо направете конструктора частен, така че операторът new да не може да се използва за инстанциране на класа
- Върнете обект на обекта, ако не е null, в противен случай създайте обекта и го върнете чрез метод.
9) Възможно ли е да се напише безопасен за нишки сингълтон в Java?
За да напишете безопасен сингълтън в Java има множество начини, например чрез използване на статичен сингълтон екземпляр, инициализиран по време на зареждане на клас, чрез писане на сингълтон с двойно проверено заключване. Java Enum е най-простият начин за създаване на безопасен сингълтън.
10) Споменете как трябва да се опише модел на проектиране?
За да се опише модел на проектиране, трябва да се внимава за следните неща
- Име на модела и класификация
- Проблем и решение
- Последици: Вариациите и зависещите от езика алтернативи също трябва да бъдат разгледани
- Познаване на употребите: Идентифицирайте употребите в реалните системи и тяхната ефективност
11) Споменете защо достъпът до нестатичната променлива не е разрешен от статичен метод в Java?
Не можете да получите достъп до нестатични данни от статичен контекст, тъй като нестатичните променливи са свързани с конкретен екземпляр на обект, докато статичните не са свързани с никакъв екземпляр.
12) Споменете кой модел е полезен, когато трябва да прехвърлите данни с множество атрибути в един изстрел от клиент към сървър?
Transfer Object Pattern е полезен, когато трябва да прехвърлите данни с множество атрибути в един изстрел от клиента към сървъра.
13) Назовете някои от обектите на DAO шаблона?
Някои от субектите на DAO включват,
- Конкретен клас на обект за достъп до данни
- Интерфейс на обект за достъп до данни
- Обект модел или обект стойност
14) Споменете кога можете да използвате модела за прихващане?
Шаблонът за прихващане се използва, когато трябва да извършите предварителна или последваща обработка с искане или отговор на приложението.
15) Споменете кога да използвате фабричен модел?
Може да се използва фабричен модел,
- Когато даден клас не знае кой клас обекти трябва да създаде
- Когато класът указва своите подкласове, за да посочи кои обекти да се създадат
- В езика за програмиране можете да използвате фабричен шаблон, където трябва да създадете обект от всеки един от подкласовете в зависимост от дадените данни
Дизайнерски шаблони Интервю Въпроси и отговори за опитни
16) Обяснете в единичен модел дали е по-добре да направите целия метод getinstance() синхронизиран или само критичната секция е достатъчна? Кое е за предпочитане?
Syncхронизиране на цялото getinstance()
методът е скъп и е необходим само по време на инициализацията на единичен екземпляр, за да се спре създаването на друг екземпляр на Singleton. Следователно е по-добре да синхронизирате само критичната секция, а не целия метод.
17) Споменете по колко начина можете да напишете единичен клас Java?
Човек може да напише единичен клас в Java по четири начина
- Singleton с публично статично крайно поле, инициализирано по време на зареждане на клас
- Единичен елемент, генериран от статичен вложен клас, наричан също шаблон на притежател на единичен елемент
- Singleton чрез синхронизиране на метода get instance ().
- От Java 5 нататък с помощта на Enums
18) Обяснете как можете да предотвратите създаването на друг екземпляр на singleton с помощта на метода clone()?
Предпочитаният начин да предотвратите създаването на друг екземпляр на сингълтън е като не внедрите Cloneable интерфейс и ако го направите, просто хвърлете изключение от метода clone() „да не създавате клонинг на сингълтон клас“.
19) Споменете каква е разликата между „хвърляне“ и „хвърляния“?
Ключовата дума „Throw“ се използва за изрично хвърляне като изключение, докато „Throws“ се използва за обработка на проверени изключения за повторно подсказване на компилатора, че изключенията се обработват. Изхвърлянията трябва да се използват в дефиницията на метода, а също и при извикване на метода, който предизвиква проверени изключения.
20) Споменете кои класове в JDK използват единичен модел?
Java.lang.Runtime
класовете използват единичен модел в JDK.
21) Споменете какво е ограничението при използването на единичен модел?
Единичният модел гарантира, че класът има само един екземпляр и предоставя глобална точка за достъп до него. Но в същото време това се превръща в негово ограничение, тъй като повечето класове в приложение ще трябва да създадете множество екземпляри.
22) Споменете каква е разликата между VO и JDO?
Разликата между JDO и VO е, че JDO е постоянна технология, която се конкурира с обектни компоненти в разработката на корпоративни приложения. Тя ви позволява да създавате POJO (обикновени стари Java обекти) и да ги съхранявате в базата данни.
Докато VO означава стойностни обекти, представлява абстрактен модел на проектиране, използван във връзка с beans на обекти, jdbc и вероятно дори JDO за преодоляване на често срещани проблеми с изолацията и транзакциите в корпоративните приложения.
Тези въпроси за интервюто също ще ви помогнат във вашата viva (устна)