import java.util.Timer;
import java.util.TimerTask;
class MyTimer {
public static void main(String[] args) {
var qtask = new Qtask();
new Timer().scheduleAtFixedRate(qtask, 0, 1000); // запускается Timer
for (int i = 0; i < 10; i++) {
try {
Thread.sleep(1000); // Ждем секунду
System.out.println(qtask.getXtime()); // Забираем значение xtime
} catch (Exception ignored) {
}
}
System.exit(0);
}
}
class Qtask extends TimerTask {
private String xtime;
public int hours = 0;
public int minutes = 0;
public int seconds = 0;
public int elapsedTime = 0;
@Override
public void run() {
elapsedTime = elapsedTime + 1000;
hours = (elapsedTime / 3600000);
minutes = (elapsedTime / 60000) % 60;
seconds = (elapsedTime / 1000) % 60;
xtime = String.valueOf(elapsedTime);
}
public String getXtime() {
return xtime;
}
}
class Commons<T extends A> {
Class<T> clazz;
public Commons(Class<T> clazz) {
this.clazz = clazz;
}
List<T> getList() {
List<T> list = new ArrayList<>();
for (int i = 0; i < 3; i++) {
T item = getObject();
list.add(item);
}
return list;
}
@SneakyThrows
T getObject() {
return clazz.getDeclaredConstructor().newInstance();
}
}
var bCommons = new Commons<>(B.class);
var list = bCommons.getList();
class Commons<T extends A> {
Class<T> clazz;
public Commons(Class<T> clazz) {
this.clazz = clazz;
}
List<T> getList() {
List<T> list = new ArrayList<>();
for (int i = 0; i < 3; i++) {
T item = getObject(clazz);
list.add(item);
}
return list;
}
@SneakyThrows
T getObject(Class<T> clazz) {
return clazz.getDeclaredConstructor().newInstance();
}
}
if(postRequest()) {
// Продолжаем работу
} else {
// Завершаем
}