hirthwork 20.05.2012 11:58

Стандартная для плюсокодера ситуация. Есть в одном файле enum, в другом switch для каждого элемента enum'а, и в каждом case стоит return <значение>. Компилятор видит, что код после switch недостижим и даже не выдаёт warning'а типа missing return statement.
Ок, переходим на джаву. javac кричит про error, про missing return statement и топает ножкой.
Приходим в Java конфу, спрашиваем почему Java такое говно. Получаем ответ, динамическое связывание — это основа джавы, что javac не должен смотреть в другие файлы и отправляемся в бан.
Ну динамическое связывание, так динамическое связывание. Пишем два файла, из класса одного файла вызываем private метод другого. Пытаемся скомпилировать первый файл. Получаем ожидаемую ошибку. Хотя «динамическое связывание» и прочее.
У меня два вопроса:
1. Первый, почему для access specifiers происходит lookup в других файлах, а для enum'ов нет?
2. Посоветуйте Java-конфу для нубов, а то в java@cjr я больше не ездец.

Recommended by:

@magog: посмотрите какой жаваеб

and @gelraen, @kb
1. 2538 20.05.2012 15:00 tertium datur

да у тебя же множественные ретурны

2. kb2538 /1 20.05.2012 21:41

это, типа, плохо?

3. 2538kb /2 20.05.2012 22:00 tertium non datur

ну я понимаю, что канпелятор всё стерпит. но реальной необходимости в return нет. ну или её не смогли обосновать, что одно и то же.

4. kb2538 /3 20.05.2012 22:03

про необходимость не понял. если больше одного return — надо доказывать какую-то необходимость? интересно, почему же.

5. 2538kb /4 20.05.2012 22:06 tertium non datur

вообще, любую хуйню которую ты делаешь или говоришь, лучше бы хотя бы примерно обосновать, ну так, чисто для прикола. особенно в процессе быдлокодерства и велопроектирования.
ну и в целом, для жизни полезный навык.

6. hirthwork2538 /5 20.05.2012 22:12 talkonaut-iphone_5.91_67b1c873

типичный красноквадратниц с типичным «многозначительным» заявлением. ПОШЁЛ НАХУЙ С МОИХ ИНТЕРНЕТОВ, УЁБОК!

7. kb2538 /5 20.05.2012 22:12

очевидно, что в каждом из switch-блоков стаёт ясным возвращаемое значение, и обосновывать нужно как раз необходимость не делать множественный return. ну, как пример обоснования — краткость и ясность кода (к примеру, если длинный switch-блок отсутствие необходимости дочитывать его до конца).

8. hirthworkkb /7 20.05.2012 22:13 talkonaut-iphone_5.91_67b1c873

ответа не будет

9. kbhirthwork /6 20.05.2012 22:13

но мне, всё же, интересно по поводу множественных return'ов (ну, кроме этих ваших RVO)

10. magoghirthwork /6 20.05.2012 22:13 Azoth

да у тебя батхерт!!!

11. hirthworkkb /9 20.05.2012 22:14 talkonaut-iphone_5.91_67b1c873

не думаю, что к джаве применим RVO. не могу представить

12. hirthworkmagog /10 20.05.2012 22:15 talkonaut-iphone_5.91_67b1c873

у меня очистка информационного поля

13. kbhirthwork /11 20.05.2012 22:17

да, минут 5 попредставлял, потом понял, что представлять RVO в джаве — не лучшее занятие для сегодняшнего вечера.

14. kbhirthwork /8 21.05.2012 07:20

таки ответ http://2538.psto.net/ogeggg#1
правда я даже не знаю, стоит ли спорить/переубеждать.

Do you really want to delete ?