Метка: java

Про offset в методу get у ByteBuffer

Что делает off­set в методе get() у Byte­Buffer? Даже help не вновит ясности. Вроде как смещение — но при попытке сместить и прочитать начинают сыпаться ошибки переполнения буфера. Справка написана не особо понятно, но, к счастью, есть исходник реализации. И, заглянув в него, мы узнаём, что это.… индекс, с которого надо начинать запись в массив!!…

Прочитать статью целиком

java: javacTask: source release 8 requires target release 1.8 в IntelliJ IDEA

Эта ошибка появляется внезапно и сразу же доводит до бешенства. Запускаешь компиляцию. а Idea в ответ: java: javac­Task: source release 8 requires tar­get release 1.8 в Intel­liJ IDEA Чтобы поправить, отправляемся в .idea/compiler.xml, и выставляем в разделе byte­code­Tar­getLev­el для этого модуля target=1.8

Разница между isInstance() и instanceof в Java

В чём разница между instance­of из class.isInstance(item) в Java? На самом деле разницы почти нет, просто instance­of требует, чтобы класс, с которым сравнивают, был известен ещё на этапе компиляции. А вот isIn­stance можно смело вызывать и от экземпляра: item1.getClass().isInstance(item2)

JavaFX Color в CSS

Внешний вид компонент JavaFX настраивается в CSS. Соответственно, должен быть какой-то конвертер стандартного javafx.scene.paint.Color в CSS-friend­­ly формат. Возможно, он и правда есть — но я его не нашёл. К тому же, внутри класс Col­or устроен немного по-другому: насыщенность цвета в свойствах getRed, get­Blue и get­Green задаётся dou­ble-числом от 0.0 до 1.0. И вот что получилось:…

Прочитать статью целиком

Callable в Java, который возвращает void

К сожалению, в Java пока не появилась аналога шаблонных Func<> и Action<> из C#. Приходится обходиться Callable, в котором указывать тип возвращаемого значения — обязательно. А если нужно просто выполнить функцию, которая возвращает void, то пишут Callable<Void> и (для асинхронных) Future<Void>. В учебниках обычно не упоминают, что для void есть класс-обёртка.

Annotation type expected для @Entity или @Test

Иногда в ответ на @Entity у Hiber­nate или @Test у JUnit компилятор Java заявляет: Anno­ta­tion type expect­ed. Это означает, что выставили не тот Import У @Entity — вместо org.hibernate.metamodel.domain.Entry надо  java.persistance.* У @Test — вместо junit.framework.Test надо org.junit.Test

FontFamily и FontName

Забытое искусство подсказки Давным-давно, когда люди ещё делали домашние странички, интернет был по шипучему модему, а Nap­ster казался опасной провокацией коммунистов, простенькие оконные приложения под Win­dows очень часто писали на библиотеке VCL. Одни пользовались Del­phi (но признавались только домашним), другие смело запускали её из C++ Builder (и удивлялись ещё одному String, а также спискам, которые…

Прочитать статью целиком

Incorrect characters in the list of audio devices in Java

Every­one knows, that audio devices are list­ed in Java with AudioSystem.getMixerInfo(). Mac users know, that the only sound device they have for Mac­in­tosh is Built-in Input, Built-In out­put and Java Sound Audio Engine, ver­sion 1.0. And only the ones who use non-latin sym­bols in OS, know about the prob­lem with this func­tion: Cyril­lic let­ters looks…

Прочитать статью целиком