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.
Zostałem przydzielony do prowadzenia aplikacji napisanej jakiś czas temu przez bardziej wykwalifikowanych programistów. Natknąłem się na ten fragment kodu: public Configuration retrieveUserMailConfiguration(Long id) throws MailException { try { return translate(mailManagementService.retrieveUserMailConfiguration(id)); } catch (Exception e) { rethrow(e); } throw new RuntimeException("cannot reach here"); } Jestem ciekawy, czy rzucanie RuntimeException("cannot reach here")jest …
Guava ma automatycznie wygenerowane przypadki testowe : Guawa ma zdumiewającą liczbę testów jednostkowych: od lipca 2012 r. Pakiet testów guawa obejmuje ponad 286 000 indywidualnych przypadków testowych. Większość z nich jest generowana automatycznie , a nie ręcznie, ale zakres testów Guava jest wyjątkowo dokładny, szczególnie w przypadku com.google.common.collect. Jak zostały …
Czy to prawda, że nadrzędnymi konkretnymi metodami jest zapach kodu? Ponieważ uważam, że jeśli chcesz zastąpić konkretne metody: public class A{ public void a(){ } } public class B extends A{ @Override public void a(){ } } można go przepisać jako public interface A{ public void a(); } public class …
Załóżmy na przykład, że masz aplikację o powszechnie udostępnianej klasie o nazwie User. Ta klasa ujawnia wszystkie informacje o użytkowniku, jego identyfikatorze, nazwie, poziomach dostępu do każdego modułu, strefie czasowej itp. Dane użytkownika są oczywiście szeroko przywoływane w całym systemie, ale z jakiegokolwiek powodu system jest skonfigurowany tak, aby zamiast …
Chcę wiedzieć, dlaczego .compareTo()jest w Comparableinterfejsie, podczas gdy metoda podobna .equalsjest w Objectklasie. Wydaje mi się arbitralne, dlaczego takiej metody .compareTo()nie ma już w Objectklasie. Aby użyć .compareTo(), zaimplementuj Comparableinterfejs i zaimplementuj .compareTo()metodę do swoich celów. W przypadku .equals()metody po prostu przesłonisz metodę w swojej klasie, ponieważ wszystkie klasy dziedziczą …
Próbuję utworzyć elastyczną strukturę ACL w Javie dla mojej aplikacji. Wiele frameworków ACL jest zbudowanych na białej liście reguł, gdzie reguła ma postać właściciel: akcja: zasób . Na przykład, „JOHN może ZOBACZYĆ zasób FOOBAR-1” „MARY może ZOBACZ zasób FOOBAR-1” „MARY może EDYTOWAĆ zasób FOOBAR-1” Jest to atrakcyjne, ponieważ reguły można …
Zastanawiam się, czy powinienem bronić się przed wartością zwracaną wywołania metody, sprawdzając, czy spełniają one moje oczekiwania, nawet jeśli wiem, że metoda, którą wywołuję, spełni takie oczekiwania. DANY User getUser(Int id) { User temp = new User(id); temp.setName("John"); return temp; } CZY POWINNAM void myMethod() { User user = getUser(1234); …
Czy wprowadzenie nowej notacji lambda (patrz np. Ten artykuł ) w Javie 8 będzie wymagało pewnego rodzaju wnioskowania typu? Jeśli tak, to w jaki sposób nowy system typów wpłynie na język Java jako całość?
W ramach pisania iteratora znalazłem, że piszę następujący fragment kodu (obsługa usuwania błędów) public T next() { try { return next; } finally { next = fetcher.fetchNext(next); } } znajdowanie go jest nieco łatwiejsze do odczytania niż public T next() { T tmp = next; next = fetcher.fetchNext(next); return tmp; …
Czy istnieją jakieś techniki specyficzne dla Javy (rzeczy, które nie miałyby zastosowania do C ++) do pisania kodu o niskim opóźnieniu w Javie? Często widzę role Java o niskim opóźnieniu i proszą o doświadczenie w pisaniu Java o niskim opóźnieniu - co czasem wydaje się trochę oksymoronem. Jedyne, co mogłem …
Zastanawiam się, jakie są techniczne różnice w implementacji między C # i Scalą oraz jak oba rozwiązania porównują się z pomysłami i obawami dotyczącymi implementacji wyrażonymi w e-mailu Peek Past lambda Briana Goetza, wysłanym na listę mailingową projektu Lambda (JSR 335) ? Z e-maila: Badaliśmy drogę „może lambdas powinny być …
Jestem pewien, że to pytanie zostało zadane wiele razy. Chciałbym jednak o to zapytać ponownie z myślą o przyszłości tych języków. Po raz pierwszy zapoznałem się z Groovy i bardzo mi się podobało. Czułem, że składnia jest prostsza i była znacznie bliższa Javie i mogłem szybko nauczyć się Grails . …
Wiem, że jest to bardzo szerokie, dwuznaczne i być może filozoficzne pytanie. Do tego stopnia, że najważniejsze słowo kluczowe w pytaniu - „silny” typ systemu - samo w sobie jest źle zdefiniowane . Pozwól mi więc wyjaśnić, co mam na myśli. Ogólny kontekst pytania W Ruby on Rails budowaliśmy bardzo …
W dość dużym projekcie znajduje się plik źródłowy z kilkoma funkcjami niezwykle wrażliwymi na wydajność (nazywanymi milionami razy na sekundę). W rzeczywistości poprzedni opiekun postanowił napisać 12 kopii funkcji różniących się bardzo nieznacznie, aby zaoszczędzić czas, który zostałby poświęcony na sprawdzenie warunków w jednej funkcji. Niestety oznacza to, że kod …
Wyobrażam sobie, że powodem był szybki, podobny do tablicy dostęp do znaku w indeksie, ale niektóre znaki nie mieszczą się w 16 bitach, więc nie działałoby ... Jeśli więc i tak musisz poradzić sobie ze specjalnymi przypadkami, dlaczego nie skorzystać z UTF-8?
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.