Вопросы с тегом «java»

Java - это высокоуровневый, независимый от платформы, объектно-ориентированный язык программирования, изначально разработанный Sun Microsystems. Java в настоящее время принадлежит Oracle, которая приобрела Sun в 2010 году.

6
Почему числа с плавающей запятой по-прежнему являются частью языка Java, когда вместо них чаще всего используются двойные числа?
В каждом месте, где я смотрел, написано, что doubleоно превосходит floatпочти во всех отношениях. floatбыл сделан устаревшим doubleв Java, так почему он все еще используется? Я много программирую на Libgdx, и они вынуждают вас использовать float(deltaTime и т. Д.), Но мне кажется, что с ними doubleпроще работать с точки зрения …

11
Разработчики Java сознательно отказались от RAII?
Как давний программист на C #, я недавно узнал больше о преимуществах Resource Acquisition Is Initialization (RAII). В частности, я обнаружил, что идиома C #: using (var dbConn = new DbConnection(connStr)) { // do stuff with dbConn } имеет эквивалент C ++: { DbConnection dbConn(connStr); // do stuff with dbConn …
82 java  c#  c++  language-design 

6
Почему существует уровень TRACE, и когда я должен использовать его, а не DEBUG?
В Log4J, Slf4J и нескольких других средах ведения журналов в Java у вас есть два уровня «разработки» для ведения журнала: DEBUG TRACE Я понимаю, что делает DEBUG, потому что объяснение ясно: Уровень DEBUG обозначает детализированные информационные события, которые наиболее полезны для отладки приложения. Но уровень TRACE не очень конкретен в …
82 java  logging 

3
Как называется функция, которая не принимает аргументов и ничего не возвращает? [закрыто]
В java.util.functionпакете Java 8 мы имеем: Функция : принимает один аргумент, выдает один результат. Потребитель : принимает один аргумент, ничего не производит. Поставщик : не принимает аргументов, дает один результат. ... : другие случаи обработки примитивов, двух аргументов и т. Д. Но мне нужно разобраться с делом «не принимает аргументов, …

15
Почему Java может быть быстрее, чем C ++?
Иногда Java превосходит C ++ в тестах. Конечно, иногда C ++ выигрывает. Смотрите следующие ссылки: http://keithlea.com/javabench/ http://blog.dhananjaynene.com/2008/07/performance-comparison-c-java-python-ruby-jython-jruby-groovy/ http://blog.cfelde.com/2010/06/c-vs-java-performance/ Но как это вообще возможно? Меня поражает, что интерпретируемый байт-код может быть быстрее, чем скомпилированный язык. Может кто-нибудь объяснить, пожалуйста? Спасибо!
80 java  c++  performance 

8
Зачем использовать try… наконец без предложения catch?
Классический способ программирования с try ... catch. Когда уместно использовать tryбез catch? В Python следующее кажется законным и может иметь смысл: try: #do work finally: #do something unconditional Тем не менее, код ничего не сделал catch. Точно так же можно подумать, что в Java это будет выглядеть следующим образом: try …


11
Почему String неизменяем в Java?
Я не мог понять причину этого. Я всегда использую класс String, как и другие разработчики, но когда я изменяю его значение, создается новый экземпляр String. В чем может быть причина неизменности класса String в Java? Я знаю, что есть некоторые альтернативы, такие как StringBuffer или StringBuilder. Это просто любопытство.

13
Почему Java не более широко используется для разработки игр? [закрыто]
Я не разработчик игр или что-то еще, но я знаю, что Java не очень широко используется для разработки игр. Java должна быть достаточно быстрой для большинства игр, так в чем же подвох? Я могу думать о некоторых причинах: Отсутствие разработчиков игр с опытом работы с Java Отсутствие хороших фреймворков для …

11
Почему объекты Java не удаляются сразу после того, как на них больше нет ссылок?
В Java, как только у объекта больше нет ссылок, он становится пригодным для удаления, но JVM решает, когда объект фактически удален. Чтобы использовать терминологию Objective C, все ссылки на Java по своей природе являются "сильными". Однако в Objective-C, если у объекта больше нет сильных ссылок, объект немедленно удаляется. Почему это …

2
Что такое «затененная» зависимость Java?
Разработчик JVM здесь. В последнее время я видел подшучивание в чатах IRC и даже в моем собственном офисе о так называемых « затененных » библиотеках Java. Контекст использования будет примерно таким: « Такой и так предоставляет« затененный »клиент для XYZ ». Прекрасным примером является проблема Jira для HBase : « …
76 java  libraries  jvm 

10
Сколько строк в классе слишком много в Java? [закрыто]
По вашему опыту, какое полезное практическое правило для того, сколько строк кода слишком много для одного класса в Java? Чтобы было ясно, я знаю, что количество строк даже близко не соответствует реальному стандарту, который следует использовать для того, что должно быть в определенном классе, а что нет. Классы должны разрабатываться …

10
Никогда не использовать строки в Java? [закрыто]
Я наткнулся на запись в блоге, в которой не рекомендуется использовать Strings в Java для того, чтобы в вашем коде отсутствовала семантика, предлагая вместо этого использовать классы тонкой оболочки. Это примеры «до» и «после», приведенные в данной статье для иллюстрации: public void bookTicket( String name, String firstName, String film, int …

13
Это хорошая практика, чтобы поймать проверенное исключение и выдать RuntimeException?
Я прочитал некоторый код коллеги и обнаружил, что он часто перехватывает различные исключения, а затем всегда выдает «RuntimeException». Я всегда думал, что это очень плохая практика. Я ошибаюсь?

3
Что означает «GPL с исключением classpath» на практике?
Похоже, что Oracle лицензирует весь свой связанный с Java открытый исходный код под лицензией GPL с исключением classpath . Из того, что я понимаю, это, кажется, позволяет объединить эти библиотеки с вашим собственным кодом в продукты, которые не должны покрываться GPL. Как это работает? Каковы примеры того, как я могу …
70 java  licensing  gpl  lgpl 

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.