Главная /
Программирование на Java /
Каким будет результат работы следующего кода? public abstract class SomeClass implements Runnable{ public static Object lock = new Object(); public void lock() { synchronized (lock) { try { lock.wait(); System.out.print("1"); } catch (InterruptedException
Каким будет результат работы следующего кода?
public abstract class SomeClass implements Runnable{
public static Object lock = new Object();
public void lock() {
synchronized (lock) {
try {
lock.wait();
System.out.print("1");
} catch (InterruptedException e) {}
}
}
public void notifyThread() {
synchronized (lock) {
lock.notify();
}
}
public void unlock() {
synchronized (lock) {
lock.notify();
System.out.print("2");
}
}
public static void main(String s[]) {
final SomeClass c = new SomeClass() {
public void run() {
lock();
notifyThread();
}
};
final SomeClass c1 = new SomeClass() {
public void run() {
unlock();
}
};
new Thread(c).start();
new Thread(c1).start();
}
}
вопрос
Правильный ответ:
программа не завершит работу, на консоли ничего не появится
программа не завершит работу, на консоли появится
1
программа не завершит работу, на консоли появится
2
программа завершит работу, на консоли появится
12
программа завершит работу, на консоли появится
21
результат трудно предугадать
Сложность вопроса
75
Сложность курса: Программирование на Java
83
Оценить вопрос
Комментарии:
Аноним
Я помощник профессора! Прямо сейчас заблокируйте сайт vtone.ru с ответами с интуит. Это невозможно
10 июн 2020
Аноним
Я завалил зачёт, какого рожна я не нашёл этот крутой сайт с всеми ответами интуит до этого
15 окт 2016
Другие ответы на вопросы из темы программирование интуит.
- # Какие утверждения относительно виртуальной машины Java (Java Virtual Machine) верны?
- # Какие из перечисленных ниже характеристик относятся к протоколу TCP?
- # Какие из следующих присвоений корректны?
- # Что будет выведено на экран в результате выполнения следующего кода: public class SomeClass { public void perform() { this.perform(1); System.out.print("1"); } public void perform(int val) { System.out.print(val); } public static void main(String[] args) { SomeClass c = new SomeClass2(); c.perform(4); } } class SomeClass2 extends SomeClass { public void perform() { super.perform(); System.out.print("3"); } public void perform(int val) { super.perform(); System.out.print(val); } }
- # Что будет выведено на экран в результате выполнения следующего кода: public class SomeClass { public static void main(String[] args) { int a[] = {1, 2, 3}; int b[] = (int[]) a.clone(); a[0] = 0; System.out.print(b[0]); } }