Java Language
Funkcje Java SE 8
Szukaj…
Wprowadzenie
W tym temacie znajduje się podsumowanie nowych funkcji dodanych do języka programowania Java w Java SE 8. Istnieje wiele innych nowych funkcji w innych dziedzinach, takich jak JDBC i Java Virtual Machine (JVM), które nie będą omówione w tym temacie.
Uwagi
Odniesienia: Ulepszenia w Java SE 8
Nowe funkcje języka programowania Java SE 8
- W tym wydaniu wprowadzono nową funkcję języka Lambda Expressions . Pozwalają traktować funkcjonalność jako argument metody lub kod jako dane. Wyrażenia lambda umożliwiają bardziej kompaktowe wyrażanie instancji interfejsów jednoprocesowych (zwanych interfejsami funkcjonalnymi).
- Odnośniki do metod zapewniają łatwe do odczytania wyrażenia lambda dla metod, które już mają nazwę.
- Domyślne metody umożliwiają dodanie nowych funkcji do interfejsów bibliotek i zapewniają zgodność binarną z kodem napisanym dla starszych wersji tych interfejsów.
- Nowe i ulepszone interfejsy API, które wykorzystują wyrażenia i strumienie lambda w Javie SE 8, opisują nowe i ulepszone klasy, które korzystają z wyrażeń i strumieni lambda.
- Ulepszone wnioskowanie o typach - kompilator Java korzysta z typowania docelowego, aby wywnioskować parametry typu wywołania metody ogólnej. Typem docelowym wyrażenia jest typ danych, którego oczekuje kompilator Java, w zależności od tego, gdzie pojawia się wyrażenie. Na przykład można użyć typu docelowego instrukcji przypisania do wnioskowania o typ w Java SE 7. Jednak w Java SE 8 można użyć typu docelowego do wnioskowania o typ w większej liczbie kontekstów.
- Powtarzające się adnotacje umożliwiają stosowanie tego samego typu adnotacji więcej niż jeden raz do tej samej deklaracji lub użycia typu.
- Adnotacje typu umożliwiają stosowanie adnotacji w dowolnym miejscu typu, nie tylko w deklaracji. Używana z systemem wtykowym typu, ta funkcja umożliwia ulepszone sprawdzanie typu kodu.
- Odbicie parametrów metody - można uzyskać nazwy parametrów formalnych dowolnej metody lub konstruktora za pomocą metody
java.lang.reflect.Executable.getParameters
. (Klasy Method i Constructor rozszerzają klasę Executable i dlatego dziedziczą metodęExecutable.getParameters
) Jednak pliki.class
domyślnie nie przechowują formalnych nazw parametrów. Aby zapisać nazwy parametrów formalnych w danym.class
pliku, a tym samym umożliwić Reflection API do pobierania nazwy parametrów formalnych, skompilować plik źródłowy z-parameters
opcją kompilatora javac. - Date-time-api - Dodano nowy interfejs API czasu w
java.time
. Jeśli zostanie użyty, nie musisz wyznaczać strefy czasowej.
Modified text is an extract of the original Stack Overflow Documentation
Licencjonowany na podstawie CC BY-SA 3.0
Nie związany z Stack Overflow