Я работаю над проектом, в котором у меня есть несколько интерфейсов и два класса реализации, которым необходимо реализовать эти два интерфейса.
Предположим, что мой первый интерфейс -
public Interface interfaceA {
public void abc() throws Exception;
}
И его реализация -
public class TestA implements interfaceA {
// abc method
}
Я называю это так:
TestA testA = new TestA();
testA.abc();
Теперь мой второй интерфейс -
public Interface interfaceB {
public void xyz() throws Exception;
}
И его реализация -
public class TestB implements interfaceB {
// xyz method
}
Я называю это так:
TestB testB = new TestB();
testB.xyz();
Проблема: -
Теперь мой вопрос: есть ли способ, я могу выполнить эти два класса реализации параллельно? Я не хочу запускать его последовательно.
Значение, я хочу запустить параллельную реализацию TestA
и TestB
? Можно ли это сделать?
Я думал использовать Callable здесь, но не знаю, как использовать Callable с типом возврата void здесь -
В качестве примера можно использовать класс TestB:
public interface interfaceB {
public void xyz() throws Exception;
}
public class TestB implements interfaceB, Callable<?>{
@Override
public void xyz() throws Exception
{
//do something
}
@Override
public void call() throws Exception
{
xyz();
}
}
Выше код дает ошибку компиляции.
UPDATE: -
Похоже, что многие люди предлагают использовать Runnable вместо вызываемого. Но не знаю, как использовать Runnable здесь, чтобы я мог выполнять TestA and TestB
параллельно.