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

10
Наследование: действительно ли код из суперкласса * скопирован * в подкласс, или на него ссылается подкласс *?

Класс Subявляется подклассом класса Sup. Что это значит практически? Или, другими словами, каково практическое значение слова «наследование»? Вариант 1: Код из Sup фактически скопирован в Sub. (как в 'copy-paste', но без скопированного кода, визуально видимого в подклассе). Пример: methodA()метод...

10
Как JVM обрабатывает исключение, выброшенное методом main?

Я понимаю исключения, выбрасываю их, обрабатываю их и распространяю на метод ниже в стеке вызовов (т.е. throws). Что я не понимаю, так это: public static void main(String[] args) throws Exception { ... } Теперь я предполагаю, что в случае, когда mainвыбрасывает Exception, JVM обрабатывает это...

10
Чистый код и гибридные объекты и зависть к функциям

Так что я недавно сделал несколько серьезных рефакторингов в своем коде. Одной из основных вещей, которые я пытался сделать, было разделение моих классов на объекты данных и рабочие объекты. Это было вдохновлено, среди прочего, этим разделом Чистого кода : Гибриды Эта путаница иногда приводит к...

10
Какова мотивация аннотации @ImplementedBy в Guice?

Недавно я прочитал об @ImplementedByаннотации, доступной в Google Guice . Это позволяет программисту определять связь между интерфейсом и его реализацией для будущего использования при внедрении зависимостей. Это пример привязки точно в срок . Я довольно привык определять явные привязки в моих...

10
Зачем нам нужен экземпляр класса Scanner для получения входных данных на Java?

Java является объектно-ориентированным, но зачем нам нужно создавать объект из класса Scanner для получения ввода? next()Например, не могут ли методы быть статическими? C выглядит для меня довольно просто, как вы только используете scanf(), gets()или fgets(). Я уверен, что у разработчиков Java есть...

10
Генерация Java-классов с параметрами значения времени компиляции

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

10
Почему проверенные и непроверенные исключения называются «противоречиями» в руководстве по Oracle Java?

Я новичок в Java и читал документацию по исключениям. и, в частности, « Непроверенные исключения» - страница «Противоречие» . Суть говорит: Если от клиента можно ожидать восстановления после исключения, сделайте его проверенным исключением. Если клиент не может ничего сделать для восстановления из...

10
Когда в Java будет использоваться нулевое выражение?

В учебнике, который я просматривал, указано, что оператор может быть пустым (нулевой оператор). Пустое выражение определяется как точка с запятой. Это абсолютно ничего не делает во время выполнения. Пустое выражение используется редко. Как умеренно опытный программист, я нахожу интересным, что они...

10
Стоит ли минимизировать создание множества мелких предметов?

При написании чего-то, что часто создает множество (1000 с) небольших объектов, следует ли пытаться минимизировать это для производительности? Особенно, если вы не знаете, на какой системе он будет работать, от низкоуровневых настольных компьютеров до мобильных устройств. Что касается мобильных...

10
Каковы основные обязанности в объектно-ориентированном программировании?

Я новичок в объектно-ориентированном программировании, и я не понимаю, какова цель основного. Да, я читал, что это «точка входа» в программу, но я не понимаю, что должно быть в основном? И каковы его обязанности? Может случиться так, что что-то написанное в main может быть инкапсулировано в другой...

10
Почему цикломатическая сложность так важна для одного метода?

Я использую SonarLint для Eclipse с недавнего времени, и это мне очень помогло. Однако, это подняло мне вопрос о цикломатической сложности. SonarLint считает приемлемым CC 10, и в некоторых случаях я превышаю его, около 5 или 6 единиц. Эти части относятся к картографам, где значения зависят от...

10
Избегайте геттеров и сеттеров, отображающих информацию о пользователях

Фон Я читаю «Чистую книгу кодов», и, в частности, я работаю над художественными объектами Kata, как банковский счет, и я застрял на этом правиле: Девятое правило художественных объектов - мы не используем геттеры или сеттеры. Это кажется довольно забавным, и я согласен с этим принципом. Более того,...

10
Интерфейс с только получателями - это запах кода?

(Я видел этот вопрос , но первый ответ касается автоматических свойств больше, чем дизайна, а второй говорит , что нужно скрыть код хранилища данных от потребителя , что я не уверен, что я хочу / мой код делает, так что хотелось бы услышать другое мнение) У меня есть две очень похожие сущности,...

10
Есть ли ситуация, когда было бы лучше использовать слабые ссылки вместо простой композиции?

Хотя в документах Java указано, что слабые ссылки предназначены главным образом для канонизации отображений, вы обнаружите, что многие , многие , многие люди в Интернете заявляют, что WeakHashMap идеально подходит для хранения метаданных объекта в течение его срока службы. Тем не менее, никто не...

10
Избежать конфликтов версий зависимостей?

Любой проект Java, который использует мой jar, почти наверняка будет иметь дополнительную зависимость от другого jar, который мой jar также содержит в качестве зависимости. Проблема в том, что у другой банки есть несколько версий. Как я могу избежать каких-либо проблем, которые могут возникнуть, в...

10
Почему нуль-безопасные операторы (например, «оператор Элвиса») были отклонены как часть «Project Coin» Java 7?

Одной из предлагаемых функций Java 7 Project Project Coin была «Оператор Элвиса». Отчет о 2009 JavaOne презентации по проекту Coin описал его как таковой: Одной из «мелких особенностей», рассматриваемых в этой презентации, является так называемый «оператор Элвиса», более краткая версия троичного...

10
Можно ли когда-нибудь нарушать LSP?

Я занимаюсь этим вопросом , но переключаюсь с кода на принцип. Исходя из моего понимания принципа подстановки Лискова (LSP), какие бы методы ни находились в моем базовом классе, они должны быть реализованы в моем подклассе, и, согласно этой странице, если вы переопределяете метод в базовом классе и...

10
Это хорошая практика, чтобы обернуть связанный набор свойств в свою собственную структуру / класс?

Написание объекта User в Swift, хотя мой вопрос касается любого строго типизированного языка. Пользователь может иметь несколько ссылок (FacebookProfile, InstagramProfile и т. Д.). Несколько вопросов по этому поводу. Это хорошая практика, чтобы обернуть ссылки в свой собственный объект? struct User...

9
Должен ли я изучать Java для разработки мобильных приложений или C # просто делать?

Я с нетерпением жду углубления в .NET Framework, но большинство мобильных приложений, похоже, разработано на Java. Скорее всего, я буду ориентироваться на менее дорогие телефоны, такие как Nokia и Motorolla, а не на Android или iPhone. Могу ли я сделать эти вещи в C...