LINUX.ORG.RU

История изменений

Исправление Legioner, (текущая версия) :

Как корутины в Котлине?

Цель похожая, но реализация совсем другая. Для программиста этим пользоваться будет гораздо проще.

Как заставить этот метод вернуть List<Map<String, Integer>>?

Не очень понял, зачем ты туда вообще передаёшь параметр cl. Но как минимум три способа:

        List<Map<String, Integer>> l1 = getObject((Class<Map<String, Integer>>) (Class<?>) Map.class);
        List<Map<String, Integer>> l2 = (List<Map<String, Integer>>) (List) getObject(Map.class);

    <T> Class<T> castClass(Class<?> c) {
        return (Class<T>) c;
    }

        List<Map<String, Integer>> l3 = getObject(castClass(Map.class));

Если скажешь, зачем тебе такой метод, можно попробовать по-другому сделать.

Версии зависимостей уже и так есть, но использовать более одной версии в одном classpath или modulepath невозможно. Ну разве что с костылями, как например выдумывать новое название пакеджа (как это правильно по-русски назвать?), как например это делают в некоторых библиотеках от Apache.

Я и говорю - я против того, чтобы превращать жаву в npm. Ибо тогда там, где сейчас 200 мегабайтов зависимостей, их будет 2 гигабайта. И запускаться простое приложение будет не 5 секунд, а 20 секунд, ибо все эти гигабайты класс-файлов надо будет открыть, прочитать с диска, распарсить, верифицировать.

Исправление Legioner, :

Как корутины в Котлине?

Цель похожая, но реализация совсем другая. Для программиста этим пользоваться будет гораздо проще.

Как заставить этот метод вернуть List<Map<String, Integer>>?

Не очень понял, зачем ты туда вообще передаёшь параметр cl. Но как минимум три способа:

[code] List<Map<String, Integer>> l1 = getObject((Class<Map<String, Integer>>) (Class<?>) Map.class); List<Map<String, Integer>> l2 = (List<Map<String, Integer>>) (List) getObject(Map.class);

<T> Class<T> castClass(Class<?> c) {
    return (Class<T>) c;
}

    List<Map<String, Integer>> l3 = getObject(castClass(Map.class));

[/code]

Если скажешь, зачем тебе такой метод, можно попробовать по-другому сделать.

Версии зависимостей уже и так есть, но использовать более одной версии в одном classpath или modulepath невозможно. Ну разве что с костылями, как например выдумывать новое название пакеджа (как это правильно по-русски назвать?), как например это делают в некоторых библиотеках от Apache.

Я и говорю - я против того, чтобы превращать жаву в npm. Ибо тогда там, где сейчас 200 мегабайтов зависимостей, их будет 2 гигабайта. И запускаться простое приложение будет не 5 секунд, а 20 секунд, ибо все эти гигабайты класс-файлов надо будет открыть, прочитать с диска, распарсить, верифицировать.

Исходная версия Legioner, :

Как корутины в Котлине?

Цель похожая, но реализация совсем другая. Для программиста этим пользоваться будет гораздо проще.

Как заставить этот метод вернуть List<Map<String, Integer>>?

Не очень понял, зачем ты туда вообще передаёшь параметр cl. Но как минимум три способа:

[code] List<Map<String, Integer>> l1 = getObject((Class<Map<String, Integer>>) (Class<?>) Map.class); List<Map<String, Integer>> l2 = (List<Map<String, Integer>>) (List) getObject(Map.class);

<T> Class<T> castClass(Class<?> c) {
    return (Class<T>) c;
}

    List<Map<String, Integer>> l3 = getObject(castClass(Map.class));

[/code]

Если скажешь, зачем тебе такой метод, можно попробовать по-другому сделать.

Версии зависимостей уже и так есть, но использовать более одной версии в одном classpath или modulepath невозможно. Ну разве что с костылями, как например выдумывать новое название пакеджа (как это правильно по-русски назвать?), как например это делают в некоторых библиотеках от Apache.

Я и говорю - я против того, чтобы превращать жаву в npm. Ибо тогда там, где сейчас 200 мегабайтов зависимостей, их будет 2 гигабайта.