All streams
Search
Write a publication
Pull to refresh
128
Михаил Седов @sedovmikread⁠-⁠only

User

Send message
Спасибо. С Вашего разрешения добавлю в текст статьи
спасибо, исправил. А по поводу Unsafe — класс не документирован. Можно попробовать скачать исходники, однако java.net уже как два дня на maintenance. Ну или почитать Unsafe java на wasm.ru: часть 1 и часть 2

ничего плохого в equals для коллекций не вижу. А по поводу equals, переопределяемый в double brace классе — стоит ли овчина выделки? если лаконичность так важна — посмотрите лучше ссылки из статьи:

own-literals-in-java-lists-and-arrays
dollarmaps
google-collections
новость интересная, но разве Gxx — DSLR?
если бы мне на ревью прислали код с double brace и переопределённым методом equals в этих же двойных скобках — я бы попросил удалить и не позориться
Все уже где-то упоминалось, даже на хабре. А по описанию нетривиальных возможностей лидирует The Java Language Specification. Я и сам не люблю когда меня отсылают к официальной документации, однако здесь не тот случай. Это действительно полезный, упорядоченный источник с хорошими примерами.
мне ThreadLocal очень помог в следующем случае:

я реализовывал Listener класс, у которого было несколько методов onBlaBlaAction(), методы вызываются в строгом порядке. Однако сама библиотека не гарантировала, что все вызовы будут из одного потока. И однажды пришлось добавить поле «состояние» в класс listener. А чтобы потоки его нагло не перетирали — спас ThreadLocal. Синхронизация в этом случае была невозможной.
блин, все же на поверхности: Thread.getAllStackTraces(), видимо ещё сплю
В моём случае самым сложным было объяснить клиенту, что Java 1.3 больше не в моде :)
и ещё один не программный метод — jstack из JDK.

Программно — получить дамп одного треда — Thread.dumpStack(), который вызывает new Exception(«Stack trace»).printStackTrace();
Остаётся получить список всех тредов. Думаю стоит посмотреть на ThreadMXBean из пакета java.lang.management.
В век eclips'ов и других продвинутых ide — это легко можно сделать во время дебага. в Idea — нажать на pause, затем — Export Threads. А метод описанный в статье больше подойдёт для отлавливания dead-lock'ов на рабочей системе — все равно приложению уже не жить.
Есть популярный метод сравнения объектов — делать проверку классов сравниваемых объектов через равенство классов. По ссылке есть есть пример: DoubleBraceInitialization

Если в классе equals уже определён таким образом, тогда от Вас мало что зависит
может я не очень крут в русском, и я уже далеко не год программирую на джава. И из всего списка для меня чем-то действительно новым было пересечение в generics типизации. Сама исходная статья даёт отличный рейтинг упущенных вещей при изучении языка. Так например в 10ку попал assert, который я даже не стал упоминать.

Изначально мой как бы «перевод» должен был содержать около 50 пунктов, однако я их перегруппировывал, отсеивал и ленился переводить дальше, в итоге вышло сколько вышло. Хотя материала хватит ещё на несколько частей. Может продолжить?
а если отключиться от интернета?
да-да, я в курсе. Если приглядеться — то можно увидеть, что там закралась ссылка. Пожалуй сделаю её более заметной
мне казалось REST изначально предполагает использование методов http для получения/изменения: сделать DELETE и удалить пару регионов. А если нужно всего лишь получить имя региона по host/region/1 — то это просто сервис с френдли-url.
и? запускать тесты можно практически в любом браузере. Разве этого не достаточно?
на видео, где-то на 3 минуте грят, что поддерживаются все браузеры.
Не знаю. Можно подождать, пока кто-нить загрузит скан 500 евро, а потом распечать. А ещё можно предоставлять виджет для сервисов, продающих контент в высоком разрешении, так сказать для превью.

Information

Rating
Does not participate
Location
Нижний Новгород, Нижегородская обл., Россия
Date of birth
Registered
Activity