Might a bit off topic, but when you learn, you could try write code in BlueJ
IDE, it is very loved in academia.
You can download it
here (<- link). In case you'd like to try, see what is said about BlueJ:
Interactive BlueJ allows you to interact with objects. You can inspect their value, call methods on them, pass them as parameters and more. You can also directly invoke Java expressions without compiling. Thus BlueJ is a powerful graphical shell/REPL for Java.