Tutaj jest kilka przykładów, które zrobiłem bez zewnętrznych bibliotek:
An alternative Steam software library that automatically reads the games you own from the local Steam files, supports renaming (in this client – no Steam files are ever altered), 2 tag levels (= even tags for tags) with a powerful filter, simple filter textbox, various sorting options, multiselect (który do tej pory dotarł także do wciąż dość prymitywnej biblioteki Steam), śledzi kiedy po raz pierwszy poznał grę, kiedy ostatnio ją uruchomiłeś (przez tego klienta), może wypisać wszystkie DLC, może oczywiście uruchamiać gry (lub wyzwalać instalację), może pokazać stronę sklepu z grą, itd.
Narzędzie do zmiany nazw plików/katalogów, w którym widzisz cały wybrany katalog i możesz od razu edytować znajdujące się w nim elementy, tak jakby to był tylko tekst w Notatniku. (Faktyczna zmiana nazwy następuje dopiero po wyraźnym wyrażeniu zgody, dla wszystkich wpisów lub dla pojedynczych). Podświetla zmienione linie (jeśli są rzeczywiście różne), ma „nieskończone” cofnięcia/redos, blokowy wybór, pisanie wielowierszowe, blokowe kopiowanie/wycinanie/wklejanie, może przycinać schowek (opcjonalnie odcinając rozszerzenia plików), więc możesz teraz łatwo skopiować zawartość całego katalogu jako tekst.
Ładnie wyglądająca gra Battleships z efektami dźwiękowymi i muzyką w mniej niż 200KB.
Co właściwie mogę zbudować za pomocą Javy?
Jest kilka rzeczy, do których Java się nie nadaje, ale większość takich przeszkód można pokonać przy pewnym wysiłku (lepszym niż zmiana języka tylko dla takich sytuacji), np. używając JNA/JNI (czego jak dotąd nigdy nie zrobiłem). Poza tym, myślę, że niebo jest granicą.