Chociaż Java 9 nie zdążyła się zadomowić na dobre, to już w marcu 2018 roku pojawi się jej kolejna odsłona – Java 10.3. Nowe wersje Javy będą wychodzić na światło dzienne dwa razy w roku – w marcu oraz we wrześniu. Choć prace nad najnowszą wersją Javy wciąż trwają, architekt języka Java, Brian Goetz podczas swojego wystąpienia na konferencji Devoxx Belgium 2017, uchylił programistom rąbka tajemnicy opowiadając o trzech nowościach, które być może się w niej pojawią. Sytuacja rozwija się dynamicznie i nie wiadomo, czy wszystkie z nich pojawią się w Javie 10.3 lecz istnieją spore szanse, że w marcu spotkamy się z nimi w najnowszej wersji Javy.
Jaka będzie najnowsza JAVA?
Pierwszym elementem, który być może znajdzie się w najnowszej wersji Javy będzie rozszerzone wnioskowanie typów generycznych i var. Poprzednie wersje Javy do używania typów generycznych wymagały powtarzania używanych typów przy deklaracji inicjalizacji. W Javie 10.3 być może nastąpi możliwość pominięcia powtórzonego typu generycznego, przy wywołaniu konstruktora. Obecnie trwają też prace, mające na celu poszerzenie wnioskowania typów i wprowadzenia wnioskowania typów dla deklarowanego typu zmiennych lokalnych. Kolejną nowością mogącą pojawić się w ukazującej się w marcu wersji Javy jest uogólniony switch. Według planowanych zmian w switchu będzie można używać niemal dowolnych wartości, a nie jak wcześniej bywało wartości odnoszących się do liczb całkowitych i wartości wyliczeniowych lub z użyciem stringów. W świetle planowanych wdrożeń do switcha będzie można przekazać dowolną wartość, a w blokach case nastąpi odpowiednie dopasowanie do wzorca. Ostatnią zapowiadaną przez Briana Goetz’a nowością jest wprowadzenie data classes i sealed interfaces, które będą używane do definiowania ścisłych hierarchii typów. Ze szczegółami planowanych zmian możecie zapoznać się oglądając wystąpienie Briana Goetz’a na youtubie.