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

Java является популярным языком программирования высокого уровня. Используйте этот тег, если у вас есть проблемы с использованием или пониманием самого языка. Этот тег редко используется отдельно и чаще всего используется вместе с [spring], [spring-boot], [jakarta-ee], [android], [javafx], [gradle] и [maven].


30
Сделать приватный метод общедоступным для модульного тестирования… хорошая идея?
Примечание модератора: здесь уже размещено 39 ответов (некоторые из них были удалены). Прежде чем опубликовать свой ответ, подумайте, можете ли вы добавить что-то значимое в обсуждение. Вы, скорее всего, просто повторяете то, что уже сказал кто-то еще. Иногда мне приходится делать закрытый метод в классе public, чтобы написать для него …
301 c#  java  unit-testing 


9
Gson: напрямую конвертировать строку в JsonObject (без POJO)
Не могу понять это. Я пытаюсь манипулировать деревом JSON в GSON, но у меня есть случай, когда я не знаю, или у меня нет POJO для преобразования строки до преобразования в JsonObject. Есть ли способ перейти непосредственно от Stringк JsonObject? Я пробовал следующее (синтаксис Scala): val gson = (new GsonBuilder).create …
301 java  json  gson 

18
Как сделать глубокую копию объекта?
Немного сложно реализовать функцию глубокого копирования объектов. Какие шаги вы предпринимаете, чтобы гарантировать, что исходный и клонированный объекты не имеют общего доступа?
301 java  class  clone 

9
Как напечатать мой Java-объект, не получая «SomeType @ 2f92e0f4»?
У меня есть класс, определенный следующим образом: public class Person { private String name; // constructor and getter/setter omitted } Я попытался напечатать экземпляр моего класса: System.out.println(myPerson); но я получил следующий результат: com.foo.Person@2f92e0f4. Похожая вещь произошла, когда я попытался напечатать массив Personобъектов: Person[] people = //... System.out.println(people); Я получил вывод: …
301 java  string  object  tostring 


9
Как избежать безумия конструктора Dependency Injection?
Я обнаружил, что мои конструкторы начинают выглядеть так: public MyClass(Container con, SomeClass1 obj1, SomeClass2, obj2.... ) с постоянно увеличивающимся списком параметров. Поскольку «Контейнер» является моим контейнером внедрения зависимостей, почему я не могу просто сделать это: public MyClass(Container con) для каждого класса? Каковы недостатки? Если я делаю это, я чувствую, что …



21
Что является ближайшей заменой указателю на функцию в Java?
У меня есть метод, который составляет около десяти строк кода. Я хочу создать больше методов, которые делают одно и то же, за исключением небольшого вычисления, которое изменит одну строку кода. Это идеальное приложение для передачи указателя на функцию для замены этой строки, но в Java нет указателей на функции. Какая …


12
Какова цель META-INF?
В Java вы часто видите папку META-INF, содержащую некоторые метафайлы. Какова цель этой папки и что я могу поместить туда?
298 java  meta-inf 

12
IntelliJ IDEA, генерирующий serialVersionUID
Как сгенерировать это значение в IntelliJ IDEA? Я иду в Настройки -> Ошибки -> Проблемы с сериализацией -> Сериализуемый класс без 'serialVersionUID', но он все равно не показывает мне предупреждение. Мой класс PKladrBuilding реализует интерфейс Serializable . Часть кода: public class PKladrBuilding extends PRQObject public abstract class PRQObject extends PObject …

7
В чем разница между атомарным / энергозависимым / синхронизированным?
Как атомарные / энергозависимые / синхронизированные работают внутри? В чем разница между следующими блоками кода? Код 1 private int counter; public int getNextUniqueIndex() { return counter++; } Код 2 private AtomicInteger counter; public int getNextUniqueIndex() { return counter.getAndIncrement(); } Код 3 private volatile int counter; public int getNextUniqueIndex() { return …

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