powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Java [игнор отключен] [закрыт для гостей] / Несколько ексепшнов разных уровней
6 сообщений из 56, страница 3 из 3
Несколько ексепшнов разных уровней
    #37992379
Фотография Blazkowicz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
chpashaт.е. что кол-во версий андроида строго больше одной - это для тебя открытие? и соответственно реализация ListView в версии 2.1 не обязана быть идентичной с 4.1?
Для меня стало открытием что поведени ListView разное в каждой версии андроида.
...
Рейтинг: 0 / 0
Несколько ексепшнов разных уровней
    #37992384
Фотография Blazkowicz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
забыл никМамонты бодаются, ТС в шоке спрятался
Да, какое-то пятничное настроение в среду. Сам в шоке.
...
Рейтинг: 0 / 0
Несколько ексепшнов разных уровней
    #37992389
chpasha
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Blazkowicz"только" относилось к примеру который я привел перед этим предложением, а не к тому что исключения никогда нельзя обработать на месте, а "только" пробрасывать наверх. Это и есть цитата выдраная из контекста.
ясно, прошу пардону. я правда спросил об этом надцать постов назад, но лучше поздно, чем никогда.
...
Рейтинг: 0 / 0
Несколько ексепшнов разных уровней
    #37992404
chpasha
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
BlazkowiczДля меня стало открытием что поведени ListView разное в каждой версии андроида.
я не стану утверждать, что я отслеживаю изменения кода между версиями, но почти наверняка уверен, что определенные оптимизации в том числе в рендеринг элементов наверняка вносились и будут вноситься. в любом случае глупо закладываться на то, что любой listview в любой версии будет рендерить за раз например строго "те что помещаются", или "те что помещаются плюс по одному невидимому сверху и снизу, а может и по два" или еще как.
...
Рейтинг: 0 / 0
Несколько ексепшнов разных уровней
    #37992418
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
случай, когда есть 2 вида компонента, один - рендерит всё и кушает много памяти ....и второй МемориКомпонент - кушает минимум памяти - вагон и маленькая тележка.
Так и должно быть. Соединять в один универсальный - вряд-ли. Задачи разные.
...
Рейтинг: 0 / 0
Несколько ексепшнов разных уровней
    #37994085
chabapok
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ого наплодили.

grasoff.netchabapok,

а если выбросить, например, ejbexception, вместо mywrappedioexception, это приемлемо? что скажешь/посоветуешь? спасибо!!
...
мне разъясните, пожалуйста!! работа стоит!!


Думать своей головой и находить в сети материал (это к "работа стоит").

Скромно так посоветую придерживаться того стиля, которого требует используемый вами фреймворк. Если там написано что-то типа "если хотите рюшечки, оберните в ejbexception", и в этом состоит его Великая Идея, то можете оборачивать.

Я лишь против маниакального оборачивания, без особых на то оснований, т.к. это говнокод. То что иногда приходится обернуть Exception в своего наследника RuntimeException - это как раз одно из оснований. Собственно, там другого выхода просто нет - надо доделывать свой код под существующий (возможно говно)код, поэтому моя реплика не касается этого случая.

Возьмем например JSONTokener.java из json.org. Есть там такой метод next() throws JSONException, есть там такой фрагмент:
Код: java
1.
2.
3.
4.
5.
try {
                c = this.reader.read();
            } catch (IOException exception) {
                throw new JSONException(exception);
            }



Это при том, что JSONException у них checked. Налицо врапперовка головного мозга, или автор банально не умеет пользоваться экзепшенами. Либа парадоксально распространенная, давайте посмотрим к чему эта врапперовка приводит.

Предположим, IOException не было бы обернуто. Тогда все просто -- на том уровне, где мы можем сделать реконнект потока, мы бы ловили IOException и делали бы ему реконнект. На том уровне, где мы бы знали что делать с хреновым json-ом мы бы ловили JSONException, т.к. я понимаю его именно как ошибку парсинга.

А что получается по факту? Там где, вызывается парсинг, надо что-то знать о вводе-выводе, проверять "а не io ли у него внутри" и если io, отдавать наверх. То есть, дополнительно, в каждом месте, добавлять десяток строк кода. В результате у нас мухи от котлет отдельно уже не будут.

Или же (в зависимости от того, что у нас куда вложено), там, где у нас чтение, ВНЕЗАПНО приходится знать еще и JSONException, потому что это может оказаться на самом деле io. При этом если у нас, например, кроме json-а добавится хреновая имплементация bsjon в том же говноситле - со своим BSONException, то нам понадобится менять код нашего читателя, добавляя в него перехват еще и BSONException с проверкой а не io ли у него внутри. В особо запущенных случаях, у него внутри может оказаться не io, но снова ABCException, внутри которого BLALALAException, внутри которого уже io. Кто не верит что так бывает - недостаточно фрилансил, работая с чужим кодом. Тут уже без рекурсивного парсера, через рефлексию вытягивающего заврапленное IOException на любом уровне, не обойтись. Но вот беда - такой парсер тоже может бросать исключения...

Ну или можно поправить код в либе. Это уже кому как. :))


Вобщем суть в том, что не надо враппать "просто так", "от нечего делать", "потому что оно там может быть", "чтобы компилятор не ругался" экзепшены.
...
Рейтинг: 0 / 0
6 сообщений из 56, страница 3 из 3
Форумы / Java [игнор отключен] [закрыт для гостей] / Несколько ексепшнов разных уровней
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]