| FazBrowse GitHub Viewer | Trending | | Home |
| Tools: [Download Repo ZIP] [Original HTTPS Page] |
| Name | Name | Last commit date | ||
|---|---|---|---|---|
A comprehensive training course covering modern Java features from Java 8 and beyond, with a focus on functional programming techniques.
Instructor: Ken Kousen
Created: July 2016
Last Updated: May 2025
This course teaches developers how to use the functional programming features introduced in Java 8 and enhanced in subsequent versions. Students will learn to use lambda expressions, method references, streams, and other modern Java features to write more expressive and maintainable code.
java_upgrade/ ├── src/ │ ├── main/java/ # Demo code and examples │ │ ├── concurrency/ # CompletableFuture demonstrations │ │ ├── datetime/ # Date/time API examples │ │ ├── got/ # Game of Thrones data model │ │ ├── interfaces/ # Interface evolution examples │ │ ├── io/ # I/O processing examples │ │ ├── lambdas/ # Lambda expression demos │ │ ├── lazy/ # Lazy evaluation patterns │ │ ├── optional/ # Optional usage examples │ │ ├── sorting/ # Comparator and sorting demos │ │ └── streams/ # Stream operation examples │ └── test/java/ # Hands-on exercises │ ├── concurrency/ # CompletableFuture exercises │ ├── got/ # Advanced stream exercises │ ├── interfaces/ # Interface implementation │ ├── lambdas/ # Functional interface exercises │ ├── optional/ # Optional pattern exercises │ ├── sorting/ # Comparator exercises │ └── streams/ # Stream operation exercises ├── labs.md # Comprehensive exercise guide ├── CLAUDE.md # Project context for Claude Code └── Java_Upgrade_Slides.pdf # Course presentation slides
The course includes 20 comprehensive exercises covering all major topics:
Lambda Expressions (Exercises 1-8)
Stream Operations (Exercises 9-15)
Advanced Features (Exercises 16-20)
See labs.md for detailed exercise instructions.
# Run all tests
./gradlew test
# Run specific test class
./gradlew test --tests "lambdas.FunctionalInterfacesTest"
# Run specific test method
./gradlew test --tests "lambdas.FunctionalInterfacesTest.implementConsumerUsingLambda"Most modern IDEs (IntelliJ IDEA, Eclipse, VS Code) support running JUnit tests directly:
Clone the repository:
git clone https://github.com/kousen/java_upgrade.git
cd java_upgradeEnsure Java is installed:
java -version # Should show Java 17 or laterBuild the project:
./gradlew buildOpen labs.md and start with Exercise 1
Run tests to verify your solutions:
./gradlew testKen Kousen
This project is licensed under the MIT License - see the LICENSE file for details.
Special thanks to all students and organizations who have taken this course and provided valuable feedback to improve the material.
Note: This is an active training repository. Content is regularly updated to reflect the latest Java features and best practices.
| Back | FazBrowse Home | New Git URL |