Pytania otagowane jako java

Java jest popularnym językiem programowania wysokiego poziomu. Użyj tego tagu, jeśli masz problemy z używaniem lub rozumieniem samego języka. Ten znacznik jest rzadko używany samodzielnie i jest najczęściej używany w połączeniu z [spring], [spring-boot], [jakarta-ee], [android], [javafx], [gradle] i [maven].

16
Jak znaleźć wszystkie podklasy danej klasy w Javie?
Jak się porusza i próbuje znaleźć wszystkie podklasy danej klasy (lub wszystkich implementatorów danego interfejsu) w Javie? Na razie mam metodę, aby to zrobić, ale uważam, że jest to dość nieefektywne (co najmniej). Metoda jest następująca: Uzyskaj listę wszystkich nazw klas, które istnieją na ścieżce klasy Załaduj każdą klasę i …


16
Czy w log4j sprawdzanie isDebugEnabled przed zalogowaniem poprawia wydajność?
Korzystam z Log4J w mojej aplikacji do logowania. Wcześniej używałem połączenia debugowania, takiego jak: Opcja 1: logger.debug("some debug text"); ale niektóre linki sugerują, że lepiej isDebugEnabled()najpierw sprawdzić , na przykład: Opcja 2: boolean debugEnabled = logger.isDebugEnabled(); if (debugEnabled) { logger.debug("some debug text"); } Więc moje pytanie brzmi: „ Czy opcja …
207 java  logging  log4j 

9
Spring Boot Skonfiguruj i użyj dwóch źródeł danych
Jak mogę skonfigurować i korzystać z dwóch źródeł danych? Na przykład oto, co mam dla pierwszego źródła danych: application.properties #first db spring.datasource.url = [url] spring.datasource.username = [username] spring.datasource.password = [password] spring.datasource.driverClassName = oracle.jdbc.OracleDriver #second db ... Klasa zastosowania @SpringBootApplication public class SampleApplication { public static void main(String[] args) { SpringApplication.run(SampleApplication.class, …


11
Jak uruchomić plik JAR
Utworzyłem plik JAR taki jak ten: jar cf Predit.jar *.* Uruchomiłem ten plik JAR, klikając go dwukrotnie (nie działał). Uruchomiłem to z wiersza poleceń DOS w następujący sposób: java -jar Predit.jar Podniósł wyjątki „Nie udało się załadować klasy głównej”. Więc wyodrębniłem ten plik JAR: jar -xf Predit.jar i uruchomiłem plik …
207 java  jar 



8
Różnica między `Optional.orElse ()` i `Optional.orElseGet ()`
Próbuję zrozumieć różnicę między metodami Optional<T>.orElse()a Optional<T>.orElseGet(). Opis orElse()metody to „Zwróć wartość, jeśli jest obecna, w przeciwnym razie zwróć inną”. Chociaż opis orElseGet()metody brzmi „Zwróć wartość, jeśli jest obecna, w przeciwnym razie wywołaj inną i zwróć wynik tego wywołania”. orElseGet()Metoda zajmuje interfejs funkcjonalny dostawca, który zasadniczo nie bierze żadnych parametrów …
206 java  java-8  optional 


7
Która z nich jest bardziej wydajna, dla każdej pętli lub iteratora?
Jaki jest najbardziej skuteczny sposób na przejrzenie kolekcji? List<Integer> a = new ArrayList<Integer>(); for (Integer integer : a) { integer.toString(); } lub List<Integer> a = new ArrayList<Integer>(); for (Iterator iterator = a.iterator(); iterator.hasNext();) { Integer integer = (Integer) iterator.next(); integer.toString(); } Proszę pamiętać, że to nie jest dokładną kopią tego …

25
Jak wykonać asercję JUnit dla komunikatu w programie rejestrującym
Mam testowany kod, który wywołuje program rejestrujący Java w celu zgłoszenia jego statusu. W kodzie testowym JUnit chciałbym sprawdzić, czy w tym rejestratorze wprowadzono poprawny wpis do dziennika. Coś w tym stylu: methodUnderTest(bool x){ if(x) logger.info("x happened") } @Test tester(){ // perhaps setup a logger first. methodUnderTest(true); assertXXXXXX(loggedLevel(),Level.INFO); } Przypuszczam, …
206 java  logging  junit  assert 

5
Dlaczego ten program Java kończy działanie, mimo że najwyraźniej nie powinien (i nie zrobił)?
Czuła operacja w moim laboratorium dzisiaj poszła całkowicie nie tak. Siłownik mikroskopu elektronowego przekroczył granicę, a po łańcuchu wydarzeń straciłem sprzęt o wartości 12 milionów dolarów. Zawęziłem ponad 40 000 linii w wadliwym module do tego: import java.util.*; class A { static Point currentPos = new Point(1,2); static class Point …

7
Kiedy ogólne elementy Java wymagają <? rozszerza T> zamiast <T> i czy jest jakaś wada przełączania?
Biorąc pod uwagę następujący przykład (użycie JUnit z dopasowaniami Hamcrest): Map&lt;String, Class&lt;? extends Serializable&gt;&gt; expected = null; Map&lt;String, Class&lt;java.util.Date&gt;&gt; result = null; assertThat(result, is(expected)); Nie kompiluje się z assertThatsygnaturą metody JUnit : public static &lt;T&gt; void assertThat(T actual, Matcher&lt;T&gt; matcher) Komunikat o błędzie kompilatora to: Error:Error:line (102)cannot find symbol method …
205 java  generics  junit 


Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.