игра брюс 2048
Главная / Программирование / Углубленное программирование на Java / Тест 88

Углубленное программирование на Java - тест 88

Упражнение 1:
Номер 1
 При сериализации двух объектов одного класса, у которого не задан serialVersionUID, значение этого идентификатора будет:

Ответ:

 (1) различным  

 (2) одинаковым 

 (3) одинаковым, только если значения полей объектов равны 


Номер 2
 Интерфейс Serializable, который реализуют классы всех сериализуемых объектов, пуст (в нем нет ни одного метода). Как Java понимает, что именно надо сериализовать в объекте и как это нужно сериализовывать?

Ответ:

 (1) структуру класса объекта и значения его полей можно получить в runtime при помощи Reflection 

 (2) поля, которые надо сериализовать, отмечены ключевым словом transient 

 (3) все классы сериализуемых объектов переопределяют метод write(), унаследованный от Object. Serializable нужен только, чтобы указать, что объект можно сериализовать 


Номер 3
 Если поле сериализуемого объекта не сериализуемое, это приведет:

Ответ:

 (1) к ошибке компилляции 

 (2) к исключению в runtime 

 (3) к тому, что при десериализации для этого поля будет вызван конструктор по умолчанию 


Упражнение 2:
Номер 1
 Для того чтобы исключить поле сериализуемого объекта из процесса сериализации, его надо отметить ключевым словом:

Ответ:

 (1) transient 

 (2) volatile 

 (3) nonserializable 

 (4) transistent 

 (5) final 


Номер 2
 Будет ли сериализовано статическое поле?

Ответ:

 (1) да 

 (2) нет 

 (3) да, если его отметить ключевым словом transient 


Номер 3
 С помощью reflection можно: 

Ответ:

 (1) получить список переменных класса 

 (2) получить список методов класса 

 (3) получить список конструкторов класса 

 (4) создать объект, вызвав его конструктор 

 (5) поменять область видимости переменной или метода 

 (6) добавить или удалить переменную или метод 


Упражнение 3:
Номер 1
 Что НЕ является минусом использования reflection: 

Ответ:

 (1) потеря производительности  

 (2) не работает в окружении с повышенной безопасностью 

 (3) разрушение ОО архитектуры 

 (4) уменьшение защищенности приложения при обработке пользовательских данных 


Номер 2
 После вызова fielD.setAccessible(true):

Ответ:

 (1) к полю класса можно будет обращаться как к public полю при написании кода 

 (2) к полю класса можно будет обращаться как к public при помощи reflection в runtime 


Номер 3
 Сериализация: 

Ответ:

 (1) процесс записи объекта в файл 

 (2) процесс записи объекта в BLOB  

 (3) процесс перевода объекта в массив байт 


Упражнение 4:
Номер 1
 Чтобы сделать объекты класса S сериализуемыми нужно: 

Ответ:

 (1) S implements Serializable 

 (2) S implements Writable 

 (3) S implements Serializable и опеределить в классе S методы read() и write() 


Номер 2
 Если при создании класса сериализуемых объектов не указать serialVersionUID, он будет посчитан на основе:

Ответ:

 (1) хэш функции от класса 

 (2) хэш функции от объекта 

 (3) текущего времени 

 (4) времени создания класса 


Номер 3
 Reflection это:  

Ответ:

 (1) название библиотеки для работы с классами 

 (2) название класса, в котором определены статические методы для работы с классами 

 (3) название метода работы с объектами, через их классы в runtime 


Упражнение 5:
Номер 1
 Как Reflection может помочь в тестировании?

Ответ:

 (1) можно получить доступ к private полям 

 (2) можно создавать объекты без вызова конструктора 

 (3) можно убрать или добавить ключевое слово static  


Номер 2
 Как получить объект типа Class для примитивного типа int? 

Ответ:

 (1) int.class  

 (2) int.getClass() 

 (3) Class.for(int) 


Номер 3
 Какой шаблон можно считать фабрикой? 

Ответ:

 (1) Singleton 

 (2) Context 

 (3) Decorator 


Упражнение 6:
Номер 1
 В чем XML сериализация проигрывает бинарной сериализаци?

Ответ:

 (1) скорость сериализации 

 (2) удобство редактирования 

 (3) Объем данных после сериализации 


Номер 2
 У вас есть XML документ с одним единственным тэгом.
Сколько callback функций будет вызвано при его обработке?

Ответ:

 (1)

 (2)

 (3)

 (4) 7  


Упражнение 7:
Номер 1
 SAX парсер отличается от DOM парсера тем, что он: 

Ответ:

 (1) не создает иерархической структуры в памяти 

 (2) загружает документ полностью, независимо от того, сколько в действительности необходимо пользователю 

 (3) менее требователен к ресурсам и занимаемому свободному месту в случае использования больших входящих документов 

 (4) создает древовидную структуру в памяти из входящего документа и лишь потом ждет запросов от клиента 


Номер 2
 Можно ли создать ресурс с параметрами подключения сервера к базе?

Ответ:

 (1) нет, можно создавать только ресурсы для объектов игровой механики 

 (2) да, можно любые параметры перенести в соответствующие ресурсы. 




Главная / Программирование / Углубленное программирование на Java / Тест 88