![]() |
Модераторы: LSD, AntonSaburov |
![]() ![]() ![]() |
|
Kakadu |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 273 Регистрация: 19.3.2008 Репутация: нет Всего: 7 |
Нет, я нигде не пропустил объявление метода со скобочками - его там нет!! -------------------- Добрые мариносы долго кормили украдкой маленьких зерлингов. От этой украдки зерлинги пухли и дохли |
|||
|
||||
gosnis |
|
|||
Шустрый ![]() Профиль Группа: Участник Сообщений: 87 Регистрация: 16.5.2007 Где: Тель Авив, Израил ь Репутация: нет Всего: 2 |
А что тебя удивляет? Ловится exception. Что бы, например, записать ошибку в логи.
|
|||
|
||||
Kakadu |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 273 Регистрация: 19.3.2008 Репутация: нет Всего: 7 |
try надо писать в теле какой-нить функции, но она тут даже не объявлена. получается что это сейчас пишется в общей куче с методами и полями класса. Как это понимать?
-------------------- Добрые мариносы долго кормили украдкой маленьких зерлингов. От этой украдки зерлинги пухли и дохли |
|||
|
||||
Evgeni68 |
|
|||
![]() Новичок Профиль Группа: Участник Сообщений: 37 Регистрация: 9.7.2007 Репутация: 2 Всего: 3 |
Ничего сверхестественного, обычный блок статической инициализации.
А можно написать и так:
Такой блок выполняется перед вызовом конструктора. Это сообщение отредактировал(а) Evgeni68 - 7.3.2009, 18:14 |
|||
|
||||
gosnis |
|
|||
Шустрый ![]() Профиль Группа: Участник Сообщений: 87 Регистрация: 16.5.2007 Где: Тель Авив, Израил ь Репутация: нет Всего: 2 |
Такой блок выполняется один раз при загрузке класса classloader-ом. |
|||
|
||||
duk |
|
|||
![]() Some Object ![]() Профиль Группа: Участник Сообщений: 179 Регистрация: 19.7.2007 Репутация: 4 Всего: 4 |
||||
|
||||
gosnis |
|
|||
Шустрый ![]() Профиль Группа: Участник Сообщений: 87 Регистрация: 16.5.2007 Где: Тель Авив, Израил ь Репутация: нет Всего: 2 |
Насколько я знаю, try без catch или finally не бывает. Поэтому я решил, что автор оригинального пост просто этот кусок кода опустил. Иначе как понимать его примечание о том, что компилятор код пропускает? Мой компилятор try без ничего отказывается пропускать. Может это он у меня бракованый. ;-) |
|||
|
||||
duk |
|
|||
![]() Some Object ![]() Профиль Группа: Участник Сообщений: 179 Регистрация: 19.7.2007 Репутация: 4 Всего: 4 |
||||
|
||||
Evgeni68 |
|
||||
![]() Новичок Профиль Группа: Участник Сообщений: 37 Регистрация: 9.7.2007 Репутация: 2 Всего: 3 |
Ну, здесь я говорил о нестатическом блоке, который-таки выполняется при создании каждого объекта. Что касается блока catch, я думаю автор просто забыл его здесь указать. |
||||
|
|||||
Kakadu |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 273 Регистрация: 19.3.2008 Репутация: нет Всего: 7 |
Аааааааааааааааааааааааааа
Теперь я понял, что конструкторы бывают и статические........ ![]() -------------------- Добрые мариносы долго кормили украдкой маленьких зерлингов. От этой украдки зерлинги пухли и дохли |
|||
|
||||
duk |
|
|||
![]() Some Object ![]() Профиль Группа: Участник Сообщений: 179 Регистрация: 19.7.2007 Репутация: 4 Всего: 4 |
||||
|
||||
gosnis |
|
|||
Шустрый ![]() Профиль Группа: Участник Сообщений: 87 Регистрация: 16.5.2007 Где: Тель Авив, Израил ь Репутация: нет Всего: 2 |
А вот этого я таки до конца не понимаю. В чем изюминка? Зачем запускать что то каждый раз ДО конструктора? Где такое может применяться? |
|||
|
||||
Evgeni68 |
|
|||
![]() Новичок Профиль Группа: Участник Сообщений: 37 Регистрация: 9.7.2007 Репутация: 2 Всего: 3 |
Лентяями, нежелающими писать конструктор, если он без параметров ![]() А ещё можно сделать такой трюк:
т.е. можно передавать объект в метод и тут же его инициализировать. Это сообщение отредактировал(а) Evgeni68 - 7.3.2009, 23:35 |
|||
|
||||
gosnis |
|
||||
Шустрый ![]() Профиль Группа: Участник Сообщений: 87 Регистрация: 16.5.2007 Где: Тель Авив, Израил ь Репутация: нет Всего: 2 |
И чем это помогает лентяям? Писать то все равно надо... А насчет трюка, я бы так писать не стал, ибо нетривиально и нечитабельно. ![]() |
||||
|
|||||
Evgeni68 |
|
|||
![]() Новичок Профиль Группа: Участник Сообщений: 37 Регистрация: 9.7.2007 Репутация: 2 Всего: 3 |
Ну как же - не нужно писать public ClassName(){...}, достаточно {...}, а вообще мои слова были скорее шуткой, чем нет.
Бесспорно, достаточно знать об этой возможности языка. Кроме того, данная фича просто необходима при использовании инструментов вроде JMock. Это сообщение отредактировал(а) Evgeni68 - 8.3.2009, 10:12 |
|||
|
||||
![]() ![]() ![]() |
Правила форума "Java" | |
|
Если Вам помогли, и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, LSD, AntonSaburov, powerOn, tux, javastic. |
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | Java: Общие вопросы | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |