Тест: Какой ты Java-программист?
Согласно опубликованному недавно рейтингу языков программирования TIOBE, Java сохраняет первое место по популярности и занимает 17%. То есть, если вы разработчик и читаете эти строки, то с наибольшей долей вероятности вы владеете Java. AIN.UA предлагает проверить свои знания в этом тесте.

Тест: Какой ты Java-программист?
/-
Укажите корректный синтаксис метода main для Java-класса.
-
Какой будет вывод в результате выполнения следующего метода:
public void print() {
int t;
System.out.println(t);
} -
Что выведет следующий фрагмент кода?
int[] arr = new int[9];
System.out.println(arr[0]); -
Какой будет вывод в результате выполнения следующего метода?
public void print() {
String s1 = «abc»;
String s2 = «abc»;
System.out.println(«s1 == s2 is:» + s1 == s2);
} -
Какой будет вывод в результате выполнения следующего метода?
public void print() {
List<String> list = new ArrayList<>();
list.add(«milk»);
list.add(«bread»);
list.add(«sausage»);
Stream<String> stream = list.stream();
list.add(«eggs»);
stream.forEach(System.out::println);
} -
Какой результат получится, если выполнить следующий метод:
public void throwException() {
try {
throw 10;
}
catch(int e) {
System.out.println(«Got the Exception » + e);
}
} -
Какое исключение из перечисленных является checked?
-
Когда выполняется блок finally{}?
-
Какой будет вывод в результате выполнения следующего метода:
public static void main(String[] args) {
try {
int a[]= {1, 2, 3, 4};
for (int i = 1; i <= 4; i++) {
System.out.println («a[» + i + «]=» + a[i] + «n»);
}
}
catch (Exception e) {
System.out.println («error = » + e);
}
catch (ArrayIndexOutOfBoundsException e) {
System.out.println («ArrayIndexOutOfBoundsException»);
}
} -
Какой будет вывод в результате выполнения следующего кода:
public class Test {
public void main(String[] args) {
int x = 10*20-20;
System.out.println(x);
}
} -
Если вы должны хранить объекты в реализации List, где сохранение происходит только один раз в течение всего жизненного цикла продукта, но чтение этих объектов довольно велико, то какую из имплементаций вы бы использовали?
-
Что из перечисленного – неправда о Collections и Collection?
-
Какая из перечисленных коллекций – потоко-безопасная?
-
Какой результат выполнения данной программы:
import java.util.HashMap;
import java.util.Map;
public class MapTest {
public static void main(String aga[]) {
Map m = new HashMap();
m.put(null, «Test»);
m.put(null, «Fest»);
System.out.println(m);
}
} -
Какова структура данных, которую HashSet использует для хранения своих элементов?
-
Что выведет данный метод:
public void test() {
List<int> intList = new ArrayList<>();
intList.add(10);
intList.add(20);
System.out.println(«The list is: » + intList);
} -
Какой результат выполнения следующего метода:
public void printClass() {
List<Float> floatList = new ArrayList<>();
List<Double> doubleList = new ArrayList<>();
System.out.println(«First type: » + floatList.getClass());
System.out.println(«Second type: » + doubleList.getClass());
} -
Какой из следующих референсных типов не может быть generic-ом?
-
Какое утверждение будет верным для следующего фрагмента кода:
class WildCard {
interface BI {}
interface DI extends BI {}
interface DDI extends DI {}
static class C<T> {}
static void foo(C<? super DI> с) {}
public void call() {
foo(new C<BI>()); //ONE
foo(new C<DI>()); //TWO
foo(new C<DDI>()); //THREE
foo(new C()); //FOUR
}
} -
Что выведет метод print() при вызове:
public class LastError<T> {
private T lastError;
void setError(T t) {
this.lastError = t;
System.out.println(«LastError : setError»);
}
}
public class StrLastError<S extends CharSequence> extends LastError<String> {
public StrLastError(S s) {
}void setError(S s) {
System.out.println(«StrLastError : setError»);
}
}
public class Test {
public void print() {
StrLastError<String> err = new StrLastError<>(«Error»);
err.setError(«Last error»);
}
} -
Какой метод класса Thread необходимо переопределить при наследовании для размещения кода, который должен выполниться в отдельном потоке?
-
Какие два метода оглашены в классе Thread?
- start()
- wait()
- notify()
- run()
- terminate()
-
Выберите наиболее подходящие утверждение для метода currentThread() класса Thread?
-
Какие два конструктора присутствуют в классе Thread?
- Thread(Runnable r, String name)
- Thread()
- Thread(int priority)
- Thread(Runnable r, ThreadGroup g)
- Thread(Runnable r, int priority)
-
Какие три метода гарантируют, что поток покинет рабочее состояние?
- yield()
- wait()
- notify()
- notifyAll()
- sleep(1000)
- join()
- Thread.killThread()
-
Что из перечисленного отвечает за конвертацию независимого от платформы байт-кода в машинный код?
-
Какое из утверждений об аннотациях в Java неверное?
-
Что из перечисленного не является классификацией памяти в Java?
-
Что из перечисленного не является встроенным загрузчиком классов?
-
Как запустить вручную сборщик мусора в Java?

Мимо проходил
Ага, так вы просто из любопытства заглянули? Тогда и это может быть вам интересно:

Вошел в IT одной ногой
Слабовато. Но ничего, Джеймс Гослинг тоже с чего-то начинал. Несколько подтянув свои знания, вы можете претендовать на должность Junior Java-разработчика.

Похоже, кое-кому уже рекрутеры прохода не дают
Всей Java не объять, но ваши знания определенно вызывают зависть у коллег и блеск в глазах у рекрутеров. Ай-да к нам?

Джеймс Гослинг гордится
Похоже, что с Java вы давно на «ты», если не ближе. Приходите работать в EPAM, у нас для вас есть много интересных проектов.
Комментарии | 2
Какой метод содержит тело потока (thread)? — это как?
4-й пример это вообще какой-то двойной блеф. Я рассчитывал на уловку с пулом строк, но изощренный вывод с предшествующей конкатынацыей расставил все на свои места 🙂