Запитання з тегом «java»

Java - це об'єктно-орієнтована об'єктно-орієнтована мова програмування на високому рівні, спочатку розроблена Sun Microsystems. На даний момент Java належить Oracle, який придбав Sun у 2010 році.

10
Чому "остаточне" ключове слово коли-небудь буде корисним?
Здається, у Java було повноваження оголошувати класи незмінними для віків, і тепер у C ++ також є. Однак, з огляду на принцип "Відкрити / закрити" в SOLID, чому це було б корисно? Для мене finalключове слово звучить так само friend- воно легальне, але якщо ви його використовуєте, швидше за все, …
54 java  c++  solid  final 

5
Коли користуватися примітивом vs класом на Java?
Я бачу, що у Java є булева (клас) проти булева (примітивна). Так само є Integer (class) vs int (примітивний). Яка найкраща практика щодо використання примітивної версії проти класу? Чи повинен я в основному завжди використовувати версію класу, якщо у мене немає конкретної причини (продуктивності?), Щоб не робити? Який найпоширеніший, прийнятий …
54 java  class  usage 

8
Чому статичний основний метод у Java та C #, а не конструктор?
Я шукаю остаточну відповідь від первинного чи вторинного джерела, чому (особливо) Java та C # вирішили використовувати статичний метод в якості точки входу, а не представляти екземпляр програми екземпляром Applicationкласу (з точкою введення будучи відповідним конструктором). Передумови та деталі мого попереднього дослідження Про це запитували раніше. На жаль, існуючі відповіді …
54 java  c#  history  entry-point 

4
Чи заперечуються переваги розробки використання Docker при використанні Java порівняно з іншими мовами, ближчими до бінарних файлів Unix?
У мене був друг, який сказав: Докер дивовижний. Ви можете використовувати його для тиражування виробництва та всіх його химерностей на локальній машині. Потім ви можете розгорнути цей екземпляр прямо через всі робочі процеси постановки супер- швидко . Тепер це було б правдою, якби розробники писали Ruby, PHP або Go - …
53 java  deployment  jvm  docker 

9
Чи повинні методи класу називати власні геттери та сетери?
Де я працюю, я бачу багато класів, які роблять такі речі: public class ClassThatCallsItsOwnGettersAndSetters { private String field; public String getField() { return field; } public void setField(String field) { this.field = field; } public void methodWithLogic() { setField("value"); //do stuff String localField = getField(); //do stuff with "localField" } …

6
Чи корисно використовувати вирази лямбда, коли це можливо в java?
Нещодавно я освоїв вираз Lambda, який був представлений в java 8. Я вважаю, що коли я використовую функціональний інтерфейс, я прагну завжди використовувати вираз Lambda замість створення класу, який реалізує функціональний інтерфейс. Це вважається хорошою практикою? Або є їх ситуації, коли використання Lambda для функціонального інтерфейсу не підходить?
52 java  lambda 

9
Чому у Java є `void` методи?
Чи / для чого Java потрібно мати voidметоди? Довідка : Будь-який метод, оголошений недійсним, не повертає значення. Наскільки я можу подумати, кожне використання voidбуло б краще обслуговуватися шляхом повернення прапора статусу, об'єкта, на який викликається, або null. Це зробило б кожен виклик заявою, яка може бути присвоєною, та полегшила б …

10
Чи розумно запитати про дизайнерські рішення, прийняті на продукт під час інтерв'ю? [зачинено]
Останнім часом я замислювався над питаннями інтерв'ю і розмірковував про поганий досвід інтерв'ю, який мав у минулому. Однією з особливих приміток є те, де я запитав інтерв'юера, чому команда вирішила використовувати EJB 3 над Spring у своєму продукті. Інтерв'юер дуже сильно зірвав мені обличчя, кричачи "Оскільки весна - це не …
51 java  interview 

9
Як я переконаю своїх товаришів по команді, що ми не повинні ігнорувати попередження компілятора?
Я працюю над величезним проектом (більше схожим на заплутану комбінацію з десятків міні-проектів, які неможливо легко розділити через погане управління залежностями, але це інша дискусія) в Java з використанням eclipse. Ми вже вимкнули ряд попереджень із налаштувань компілятора, і проект все ще має понад 10 000 попереджень. Я великий прихильник …
51 java  eclipse 


11
Я не розумію, як TDD допомагає мені отримати гарний дизайн, якщо мені потрібна конструкція, щоб почати її тестувати
Я намагаюся обернути голову навколо TDD, зокрема частини розробки. Я переглянув деякі книги, але ті, з яких я знайшов, в основному стосуються тестової частини - історії NUnit, чому тестування хороше, Red / Green / Refactor та як створити калькулятор струн. Хороший матеріал, але це "просто" модульне тестування, а не TDD. …
50 java  c#  .net  tdd 

9
Чому порівняння значень рядка == оператора не зробило його Java?
Кожен компетентний програміст Java знає, що вам потрібно використовувати String.equals () для порівняння рядка, а не ==, тому що == перевіряє рівність еталону. Коли я маю справу з рядками, більшу частину часу я перевіряю на рівність значення, а не на рівність еталон. Мені здається, було б інтуїтивніше, якби мова дозволила …

11
Чому у C ++ є "невизначена поведінка" (UB), а інші мови, такі як C # або Java, не мають?
Цей пост переповнення стеку містить досить вичерпний перелік ситуацій, коли специфікація мови C / C ++ заявляється як "невизначена поведінка". Однак я хочу зрозуміти, чому інші сучасні мови, такі як C # або Java, не мають поняття "невизначена поведінка". Це означає, що дизайнер компілятора може керувати всіма можливими сценаріями (C …

4
Чому погана ідея створити загальний сетер та геттер з відображенням?
Нещодавно я написав цю відповідь на питання про те, як уникнути наявності геттера та сетера для кожної змінної змінної. У той час у мене було лише важковербальне відчуття кишки, що це погана ідея, але ОП явно запитував, як це зробити. Я шукав тут питання, чому це може бути проблемою, і …
49 java  reflection 

6
Вирішення винятків для перевірених Java
Дуже ціную нові функції Java 8 щодо інтерфейсів лямбдасів та методів за замовчуванням. Та все ж мені все одно нудно за перевіреними винятками. Наприклад, якщо я просто хочу перерахувати всі видимі поля об’єкта, я хотів би просто написати це: Arrays.asList(p.getClass().getFields()).forEach( f -> System.out.println(f.get(p)) ); Тим не менш, оскільки getметод може …

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.