Всем привет! Как и обещала в комментарии к прошлой статье, выкладываю тестовое задание по J2SE и JavaEE которое мне прислали для зачисления на стажировку. Для его выполнения дается 30 минут. Правда, сохранить успела 12 из 14 вопросов.
- означает, что может быть несколько вариантов ответа
* означает, что может быть только один вариант ответа
- Вопрос
- Вопрос
- Вопрос
- Вопрос
- Вопрос
- Вопрос
- Вопрос
- Вопрос
- Вопрос
- Вопрос
- Вопрос
- Вопрос
Integer a = new Integer(2);
Integer b = new Integer(2);
What code will provide output: "false"? Check all that apply.
Варианты ответов:
- System.out.println(a.intValue() == b.intValue());
- System.out.println(a.compareTo(b));
- System.out.println(a.equals(b));
- System.out.println(a == b);
Which HTTP methods are NOT considered idempotent (multiple execution of query
will give the same result)? (Choose all that apply)
Варианты ответов:
- GET
- POST
- HEAD
- PUT
How should servlet developers handle the HttpServlet's service() method when
extending HttpServlet? (Choose all that apply).
Варианты ответов:
- They should override the service() method in most cases.
- They should call the service() method from doGet() or doPost().
- They should call the service() method from the init() method.
- They should override at least one doXXX() method (such as doPost()).
Which methods are used by a servlet to handle form data from a client?
(Choose all that apply)
Варианты ответов:
- HttpServlet.doHead()
- HttpServlet.doPost()
- HttpServlet.doForm()
- ServletRequest.doGet()
- ServletRequest.doPost()
- ServletRequest.doForm()
Given the Product Bean:
public class Product{
public Product(String title, int size){
this.title = title;
this.size = size;
}
String title;
int size;
}
How would servlet code from a service method (e.g. doPost()) pass a Product bean
info to the jsp?
Варианты ответов:
* response.setAttribute("product", new Product("Shirt", t));
* response.setParameter("product", new Product("Shirt", t));
* request.setAttribute("product", new Product("Shirt", t));
* request.setParameter("product", new Product("Shirt", t));
You have to create your own type of exception, named UserOperationExсeption.
And you need to make it a checked exсepetion. What is the appropriate signature in
this case? Check all that apply.
Варианты ответов:
- public class UserOperationExсeption extends RuntimeExсeption{...}
- public class UserOperationExсeption extends Exсeption{...}
- public class UserOperationExсeption extends IOExсeption{...}
- public class UserOperationExсeption extends extends Error{...}
Given following classes hierarchy:
public class Building {...}
public class Warehouse extends Building {...}
public class Shop extends Building {...}
public class SportsShop extends Shop {...}
and code:
...
Building b1 = new Building();
Building b2 = new Warehouse();
...
What code will cause a ClassCastException to be thrown? Check all that apply.
Варианты ответов:
- Warehouse w1 = b2;
- Warehouse w2 = (Warehouse) b2;
- Warehouse w3 = new SportsShop();
- Shop s1 = (Shop)b1;
- Shop s2 = new SportsShop();
Given the method:
public int shift(int value, int offset)
{
value += offset;
return value;
}
What will be the output of following code:
int v = 2;
shift(v,5);
System.out.println(v);
Варианты ответов:
* 2
* 5
* 7
* 3
Given:
public class Product {
public Product(String title, int size){
this.title = title;
this.size = size;
}
String title;
int size;
public String toString()
{
return title + ":" + size;
}
}
...
Set products = new HashSet();
products.add(new Product("Hat", 3));
products.add(new Product("Hat", 3));
System.out.println(products);
What items will be in the programm output, considering that Product class inherits
equals() and hashCode() methods from Object?
Варианты ответов:
* Hat
* [Hat:3, Hat:3]
* [Hat:3]
* RuntimeException about duplicate elements
What code is valid for creating immutable list?
Варианты ответов:
* List immutableItems = Collections.unmodifiableList(new ArrayList());
immutableItems.add("i1");
immutableItems.add("i2");
* List items = new ArrayList();
items.add("i1);
items.add("i2");
List immutableItems = Collections.unmodifiableList(items);
* List items = new ArrayList();
items.add("i1);
items.add("i2");
final List immutableItems = items;
* List can't be immutable
What is complexity (Big 0 notation) of ArrayList contains() method?
Варианты ответов:
* 0(n^2)
* 0(log(n))
* 0(n)
* 0(1)
Given and array of size n, suppose you need to write a program that
calculates the sum of every second element of this array. What will be the
complexity (Big 0 notation) of most optimal implementation of this algorithm?
Варианты ответов:
* 0(n^2)
* 0(n/2)
* 0(n)
* 0(1)
ПЕРЕЙДИТЕ В ПОЛНУЮ ВЕРСИЮ
5 вопрос — (если не ошибаюсь) «request.setAttribute(»product", new Product(«Shirt», t));"
1. — System.out.println(a == b); (Забавно, что compare выведет 0)
6. — public class UserOperationExeption extends Exeption{...}
— public class UserOperationExeption extends IOExeption{...}
7. — Warehouse w1 = b2;
8. * 2
9. * [Hat:3, Hat:3]
10. * List can't be immutable
11. * 0(n)
12. * 0(n/2)
Правильность не гарантирую, но пояснить могу :).
11. В переводе на нормальный язык задание звучит так: сколько элементов массива размером N нужно пробежать в худшем случае, чтобы в массиве что-либо найти. Понятно, что все N и надо пробежать.
12. Аналогично: сколько элементов массива нужно пробежать, чтобы сложить все чётные.
beanList = Collections.unmodifiableList(beanList);
вот здесь
Или я что-то неправильно понимаю?
stackoverflow.com/a/10750879
stackoverflow.com/a/44214054
Тут получим java.lang.UnsupportedOperationException, т.к. unmodifiableList возвращает неизменяемую копию листа.
Это верный ответ: сначала создаем и заполняем лист, потом создаем его неизменяемую копию, в которую уже невозможно ничего добавить.
Тут создаем обычный mutable ArrayList и просто присваиваем ссылку на него другой переменной, объявленной final, что никак не влияет на свойства самого листа, в него по-прежнему можно вносить изменения, используя обе ссылки.
final в данном случае говорит о том, что этой переменной нельзя переприсвоить значение, т.е. нельзя дальше в теле метода написать еще раз immutableItems = anything (компилятор ругнется)
дадут Compile error, так как компилятор в состоянии определить несоответствие типов.
Warehouse w1 = b2 можно спасти сделав явное приведение Warehouse w1 = (Warehouse) b2 и компилятор эту строку пропустит, а JVM выполнит без ошибок, так как в переменной типа родитель может находится любой предок, но чтобы компилятор это пропустил надо сделать явное приведение (explicit casting)
Warehouse w3 = new SportsShop() — в этом случае явное несоответствие типов.
Shop s1 = (Shop)b1 даст ClassCastException на этапе выполнения кода, так как компилятор пропустит этот код(приведение типа указано), но JVM при проверке найдет, что ссылка с типом родитель содержит другую ветвь потомков и выбросит исключение.
10.
* List can't be immutable@driver уже все расписал, может. Правильный второй вариант ответа.12. На самом деле непонятно как отвечать — надо глубже вникать в определение BigO notation так как по определению все константы должны отбрасываться, но в этом случае всегда будет перебираться только половина массива и это может быть исключением из правил.
Update: Я все же склоняюсь к варианту O(n)
> What will be the worst and best time complexity (Big Θ notation) of the most optimal implementation of this algorithm?
1. — System.out.println(a==b);
6. — public class UserOperationExeption extends Exeption{...}
— public class UserOperationExeption extends IOExeption{...}
7. — Warehouse w1 = b2;
— Shop s1 = (Shop)b1;
8. * 7
9. * [Hat:3, Hat:3]
10. List items = new ArrayList();
items.add(«i1»);
items.add(«i2»);
List immutableItems = Collections.unmodifiableList(items);
пишут если equals() не переопределен возвращает false
(я так понял))
public boolean equals(Object obj) {
if (obj instanceof Integer) {
return value == ((Integer)obj).intValue();
}
return false;
}
Поэтому true.
а тут true))
получается у Integer он уже переопределен.
Ответ 2.
Примитивные типы не изменяются при такой передаче в метод.
ответ POST
www.durgasoft.com/scwcd_material_2.asp?chapter=1&page=8
Ну это ты наверное и сама нагуглила))