Приветствую всех! Читаю у Брюса Эккеля про дженерики, попался в качестве примера такой код:
package net.mindview.util;
import java.util.*;
public class New {
public static <K,V> Map<K,V> map() {
return new HashMap<K,V>();
}
}
public class LimitsOfInference {
static void f(Map<Person, List<? extends Pet>> petPeople) {}
public static void main(String[] args) {
// f(New.map()); // Does not compile
}
}
И объяснение:
Type inference doesn’t work for anything other than assignment. If you pass the result of a method call such as New.map( ) as an argument to another method, the compiler will not try to perform type inference. Instead it will treat the method call as though the return value is assigned to a variable of type Object.
И тем не менее я воспроизвел этот код в IDE, он успешно скомпилировался и запустился. Это ошибка или информация в книге устарела? У меня jdk 8.
Оборудование для ресторана: новинки профессиональной кухонной техники
Частный дом престарелых в Киеве: комфорт, забота и профессиональный уход
Собственно, есть необходимость шифровать базу данных, сейчас работает так - все данные в бд зашифрованы, но сейчас все на SQLLiteБыло решено перевести...
ЗдравствуйтеКак посчитать аналитически число вариантов размена 100 рублей монетами по 10, 5 и 2 рубля? Как выглядит код прямого перебора?
Есть моделька ноты с соответствующими ей полямиИз этих нот сделана музыкальная дорожка, судя по всему у нее формат файла MIDI