Java to niezależny od platformy, obiektowy język programowania wysokiego poziomu, pierwotnie opracowany przez Sun Microsystems. Java jest obecnie własnością firmy Oracle, która zakupiła Sun w 2010 roku.
Jedną z proponowanych funkcji „Project Coin” Java 7 był „operator Elvisa”. Raport z prezentacją 2009 JavaOne nad projektem Coin opisał to w następujący sposób: Jedną z „małych funkcji” omawianych w tej prezentacji jest tak zwany „operator Elvisa”, bardziej zwięzła wersja operatora trójskładnikowego. Czuję, że brakuje mi niektórych funkcji Groovy podczas …
Kontynuuję to pytanie , ale skupiam się z kodu na zasadzie. Z mojego zrozumienia zasady podstawienia Liskowa (LSP), wszystkie metody w mojej klasie bazowej muszą być zaimplementowane w mojej podklasie i zgodnie z tą stroną, jeśli zastąpisz metodę w klasie bazowej i nie robi ona nic ani nie rzuca wyjątek, …
Każdy projekt Java, który korzysta z mojego jar, prawie na pewno będzie miał dodatkową zależność od innego jar, który mój jar również zawiera jako zależność. Problem polega na tym, że inny słoik ma wiele wersji. Jak mogę uniknąć problemów, które mogą się pojawić, na przykład w przypadku, gdy wersja 2. …
Chociaż docs Java określić, że odniesienia Słabe są przede wszystkim dla canonicalizing mapowania, znajdziesz wiele , wiele , wiele ludzi w internecie stwierdzające, że WeakHashMap jest idealny do przechowywania metadanych obiektu w trakcie jego trwania. Jednak nikt nie zadaje sobie trudu, aby podać zrozumiały I odpowiedni przykład. Używanie WeakHashMap do …
tło Czytam książkę „Czysty kod” i równolegle pracuję nad obiektami kalistenicznymi Kata, takimi jak konto bankowe, i utknąłem na tej zasadzie: Dziewiąta zasada dotycząca obiektów kalistenicznych polega na tym, że nie używamy getterów ani seterów. Wydaje się to całkiem zabawne i zgadzam się z tą zasadą. Ponadto na stronie 98-99 …
Od niedawna używam SonarLint do Eclipse , co bardzo mi pomogło. Podniosło mnie jednak pytanie o złożoność cykliczną. SonarLint uważa za akceptowalny współczynnik CC wynoszący 10, a w niektórych przypadkach przekraczam ten limit, około 5 lub 6 jednostek. Części te są powiązane z elementami odwzorowującymi, w których wartości zależą od …
Jestem nowy w programowaniu obiektowym i nie rozumiem, jaki jest cel głównego. Tak, czytam, że jest to „punkt wejścia” programu, ale nie rozumiem, co powinno być w głównym? A jakie są jego obowiązki? Może się zdarzyć, że coś napisanego w main może być enkapsulowane w innym obiekcie, ale ile powinieneś …
Kiedy dzwonię, Stream.sort(..)czy tworzona jest nowa tablica elementów, a strumień iteruje po nowo utworzonej posortowanej tablicy? Innymi słowy, jak Java 8 Stream działa sortpod maską?
Pisząc coś, co często tworzy wiele (1000) małych obiektów, powinieneś spróbować zminimalizować to pod kątem wydajności? Zwłaszcza jeśli nie wiesz, na jakim systemie będzie on działał, od niskich do wysokiej klasy komputerów stacjonarnych, a nawet urządzeń mobilnych. W przypadku urządzeń mobilnych słyszałem, że tworzenie wielu obiektów nieco utrudnia wydajność, choć …
Jestem nowy w Javie i czytałem dokumentację dotyczącą wyjątków. , a zwłaszcza Niezaznaczone wyjątki - strona Kontrowersje . Dolna linia mówi: Jeśli można zasadnie oczekiwać, że klient wyzdrowieje z wyjątku, uczyń go sprawdzonym wyjątkiem. Jeśli klient nie może nic zrobić w celu odzyskania od wyjątku, uczyń z niego niesprawdzony wyjątek. …
W podręczniku, w którym szukałem klasy, stwierdzono, że instrukcja może być pusta (instrukcja zerowa). Instrukcja null jest zdefiniowana jako tylko średnik. Nie robi absolutnie nic w czasie wykonywania. Instrukcja zerowa jest rzadko używana. Jako średnio doświadczony programista uważam za interesujące, że, jak mówią, rzadko używane, oznacza to, że gdzieś jest …
Rozważmy sytuację, w której klasa implementuje to samo podstawowe zachowanie, metody itd., Ale istnieje wiele różnych wersji tej klasy do różnych zastosowań. W moim szczególnym przypadku mam wektor (wektor geometryczny, a nie listę) i ten wektor może mieć zastosowanie do dowolnej N-wymiarowej przestrzeni euklidesowej (1 wymiar, 2 wymiar, ...). Jak …
Java jest zorientowana obiektowo, ale dlaczego musimy utworzyć obiekt z klasy skanera, aby uzyskać dane wejściowe? Czy next()na przykład metody nie mogą być po prostu statyczne? C wygląda mi na prostsze, jak tylko używasz scanf(), gets()lub fgets(). Jestem pewien, że istnieje powód dla programistów Java, aby utworzyć klasę Scanner, ale …
Niedawno przeczytałem o @ImplementedByadnotacjach dostępnych w Google Guice . Pozwala programiście określić powiązanie między interfejsem a jego implementacją do wykorzystania w przyszłości we wstrzykiwaniu zależności. Jest to przykład wiązania just-in-time . Jestem przyzwyczajony do definiowania jawnych powiązań w moich modułach, używając następującej składni: bind(SomeInterface.class).to(SomeInterfaceImplementation.class); Zgodnie z dokumentacją jest to równoznaczne …
Niedawno dokonałem poważnych zmian w moim kodzie. Jedną z głównych rzeczy, które próbowałem zrobić, było podzielenie moich klas na obiekty danych i obiekty robocze. Zostało to zainspirowane między innymi przez tę sekcję Clean Code : Hybrydy To zamieszanie czasami prowadzi do niefortunnych hybrydowych struktur danych, które są w połowie obiektowymi …
Używamy plików cookie i innych technologii śledzenia w celu poprawy komfortu przeglądania naszej witryny, aby wyświetlać spersonalizowane treści i ukierunkowane reklamy, analizować ruch w naszej witrynie, i zrozumieć, skąd pochodzą nasi goście.
Kontynuując, wyrażasz zgodę na korzystanie z plików cookie i innych technologii śledzenia oraz potwierdzasz, że masz co najmniej 16 lat lub zgodę rodzica lub opiekuna.