Хабр Курсы для всех
РЕКЛАМА
Практикум, Хекслет, SkyPro, авторские курсы — собрали всех и попросили скидки. Осталось выбрать!
public static void Add<T>(T first, T second) {...}
public class C {
public static void main(String[] args) {
someMethod(123, 456);
someMethod(new Object(), new Object());
someMethod("aaa", "bbb");
}
static <T> void someMethod(T a, T b) {
System.out.println("a=" + a + ", b=" + b);
}
}
Вывод:
a=123, b=456
a=java.lang.Object@fa3ac1, b=java.lang.Object@276af2
a=aaa, b=bbb
Все знают что интерфейс Clonable пустой, без единого метода и переменной, просто маркер для JVM. Вопрос — почему?
Каждый объект — монитор/лок (wft!)
InterruptedException — аналогично
class Integer extends Number { ... }
Map<MyKeyObject, PersistedPlan> plansById = new HashMap<>();
Плохая Java или как не надо делать