These are my personal study notes from learning and working with Java. They collect the language fundamentals, object-oriented design, standard library APIs, concurrency concepts, and practical examples I want to keep in one reference.
I am building this collection as I study Java and use it to understand how complete applications are structured. The notes begin with small programs and core syntax, then move through object design, collections, functional APIs, files, concurrency, and the Java runtime.
Examples use Java and standard JDK APIs. Each chapter explains the concept in plain language, includes code that can be compiled or run, and links to current official references. Where an API depends on a newer Java release, the required version is stated.
- Compile and run Java programs with the JDK
- Work with types, variables, operators, methods, and control flow
- Model objects with classes, interfaces, records, and composition
- Handle errors with exceptions and validate input
- Use generics and the Collections Framework
- Write lambdas and process data with streams
- Read and write files and use date-time types
- Understand concurrency, project modules, tests, and JVM tools
Install a supported JDK, create a file named Main.java, then compile and run it from the terminal:
javac Main.java
java MainSmall examples can also be explored interactively with jshell. The chapters explain when to use each tool and how to organize code as a program grows.
- Portfolio: https://www.ashishranjan.net
- GitHub: https://github.com/a2rp
- CodePen: https://codepen.io/ash1198
- LinkedIn: https://www.linkedin.com/in/aashishranjan
- Facebook: https://www.facebook.com/theash.ashish/
- YouTube: https://www.youtube.com/@ashishranjan-ashz?sub_confirmation=1
- Email: mailto:ash.ranjan09@gmail.com
- Support: https://a2rp-donation-page.netlify.app/
- Buy Me a Coffee: https://buymeacoffee.com/ashishranjan
- Patreon: https://www.patreon.com/ashishranjan