При поиске куски кода, которые могут привести к тупиков, используя темы, я наткнулся на этот кусок кода:Каков код, написанный внутри сценария мертвой блокировки ниже?
Thread t1 = new Thread(){
public void run(){
while(true){
synchronized(str1){
try {
Thread.sleep(10);
} catch (InterruptedException e) {
}
synchronized(str2){
System.out.println(str1 + "::"+str2);
}
}
}
}
};
После объявления и инстанцировании Thread
объект, кажется, в этом потоке метод run
написан с сопровождающим логики и определение Thread
заканчивается закрытием скобки с помощью двоеточия.
Как называется такой блок кода? Это то, что называется анонимным блоком?
Да его анонимный класс. – SMA
Это «анонимный класс». https://docs.oracle.com/javase/tutorial/java/javaOO/anonymousclasses.html –
Возможный дубликат [Создание экземпляра абстрактного класса или анонимного класса] (http://stackoverflow.com/questions/16785922/creating -the-instance-of-abstract-class-or-anonymous-class) – Joe