1. Java / Говнокод #14494

    +69

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    public List<ImportException> importFiles() {
        Collection<ImportException> exceptions = new ArrayList<ImportException>();
        /* весь метод exceptions ссылается на этот список */
        return (List<ImportException>) exceptions;
    }

    Полиморфизм ёпт

    Запостил: evg_ever, 04 Февраля 2014

    Комментарии (17) RSS

    • показать все, что скрыто⇓ ⇓ ⇓ Там написана ХУЙНЯ. ⇓ ⇓ ⇓
      Ответить
    • Насколько мне известно, шаблоны с наследованием не дружат. Шаблон нужен компилятору, а здесь компилятор побоку и бездумные преобразования типов.
      Ответить
      • > шаблоны с наследованием не дружат
        1) Жабьи generics не шаблоны (в исконном крестосмысле), а всего лишь проверки на уровне компилятора :)
        2) Смотря как. List<ImportException> в Collection<ImportException> кастанется молча. Collection<ImportException> в List<ImportException> - только ручным кастом, ну и может выбросить исключение, если там был не потомок List'а. А вот List<Derived> и List<Base> - не кастуются ни туды ни сюды, т.к. можно прострелить себе ногу.
        Ответить
    • коллекция исключений... это, конечно, круто.
      Ответить
      • for (ImportException exception : exceptions)
            throw exception;
        Ответить
        • Мы слышали, что в новом крутом языке D всё так и работает
          Ответить
        • Кстати, при проектировании SQLException использовали Снуп-Дог-паттерн.
          Yo dawg! I herd you like checked exceptions so we put checked exceptions into your checked exception so you can handle errors while you handling errors.
          Ответить
          • Дык nested exception это ж цепочка, то есть список.
            Более того try-finally превращает её в дерево, ибо исключение в try может быть подавлено исключением в finally.
            Ответить
            • Точно так! А ваш си шарп так может?
              Ответить
              • http://std3.ru/9c/45/1370076309-9c45f55e73bed752cc8d66dfe0a5043b.jpeg
                Ответить
                • Там гоатсе или негры-пидорасы? Что-то я очкую открывать твои ссылки.
                  Ответить
                  • Кул даун ) Нет там ни пидорасов ни гоатсе.
                    Ответить
                  • http://2.bp.blogspot.com/-acZrfBNxVPM/Tg5eeZ2sTGI/AAAAAAAAAtk/UvEqZzNZNf4/s400/goatse%2Bmug.JPG
                    Ответить
                    • http://sam.zoy.org/goatse/goatse_formula.jpg

                      What has been seen cannot be unseen.
                      Ответить
                      • http://archive.is/sam.zoy.org

                        На тот сайт за чем-нибудь, кроме гоатсе, вообще заходят?
                        Ответить

    Добавить комментарий