Zero knowledge → degree → professional → expert

Java Programming

Master Java from absolute basics to advanced object-oriented programming

114 structured topics, each reinforced with plain-language teaching, memory hooks, hands-on practice, retrieval, teach-back, speed recall, professional transfer and spaced review.

Start learning

How mastery works

1. Five-year-old simple

Every new term is explained without assumed knowledge and linked to a familiar picture.

2. Do it

Guided labs, typing, diagrams, configurations, queries or professional artefacts turn words into usable skill.

3. Retrieve it

No-peeking recall, teach-back and 60-second checks force the brain to retrieve instead of recognise.

4. Use it professionally

Failure modes, security, evidence, capstones and spaced repetition build degree and workplace fluency.

Course topics

  1. Hello World! — Your first Java program
  2. JDK & IDE Setup — Installing Java development tools
  3. Java Program Structure — Classes, methods, main()
  4. Comments & Documentation — Single, multi-line, Javadoc
  5. Variables & Types — int, String, boolean, double
  6. Primitive Types — byte, short, int, long, float, double
  7. Type Casting — Implicit and explicit conversion
  8. Constants & final — Declaring unchangeable values
  9. Variable Scope — Local, instance, class variables
  10. Arithmetic Operators — +, -, *, /, %, ++, --
  11. Comparison Operators — ==, !=, <, >, <=, >=
  12. Logical Operators — &&, ||, !
  13. Assignment Operators — =, +=, -=, *=, /=
  14. Bitwise Operators — &, |, ^, ~, <<, >>
  15. Ternary Operator — condition ? value1 : value2
  16. String Basics — Creating and using Strings
  17. String Methods — length, substring, equals, concat
  18. String Comparison — equals vs ==
  19. StringBuilder — Mutable string operations
  20. String Formatting — printf and format()
  21. If Statements — Conditional execution
  22. Else & Else If — Multiple conditions
  23. Nested If Statements — Conditions within conditions
  24. Switch Statements — Multi-way branching
  25. Switch Expressions — Modern switch syntax
  26. For Loops — Counter-controlled iteration
  27. While Loops — Condition-controlled loops
  28. Do-While Loops — Post-test iteration
  29. Enhanced For Loop — Iterating collections
  30. Break & Continue — Loop control statements
  31. Nested Loops — Loops within loops
  32. Method Basics — Reusable code blocks
  33. Parameters & Return — Input and output
  34. Method Overloading — Same name, different params
  35. Recursion — Methods calling themselves
  36. Variable Arguments — Flexible parameter lists
  37. Array Basics — Fixed-size collections
  38. Array Operations — Traversal and manipulation
  39. 2D Arrays — Matrices and grids
  40. Array Algorithms — Search and sort
  41. Arrays Utility Class — java.util.Arrays methods
  42. ArrayList Basics — Dynamic collections
  43. ArrayList Methods — add, remove, get, set
  44. Wrapper Classes — Integer, Double, Boolean
  45. Autoboxing — Automatic conversion
  46. Classes & Objects — OOP fundamentals
  47. Instance Variables — Object state
  48. Constructors — Object initialization
  49. Constructor Overloading — Multiple constructors
  50. this Keyword — Reference to current object
  51. Encapsulation — Data hiding principles
  52. Access Modifiers — public, private, protected
  53. Getters & Setters — Accessor and mutator methods
  54. Static Members — Class-level variables/methods
  55. Inheritance Basics — Extending classes
  56. super Keyword — Accessing parent class
  57. Method Overriding — Redefining parent methods
  58. Object Class — toString, equals, hashCode
  59. Polymorphism — Many forms, one interface
  60. Dynamic Binding — Runtime method resolution
  61. instanceof Operator — Type checking
  62. Casting Objects — Upcasting and downcasting
  63. Abstract Classes — Partial implementation
  64. Abstract Methods — Method declarations without body
  65. Interfaces — Define contracts
  66. Default Methods — Interface implementation
  67. Multiple Interfaces — Implementing many interfaces
  68. Exception Basics — What are exceptions?
  69. Try-Catch Blocks — Handling exceptions
  70. Multiple Catch Blocks — Handling different exceptions
  71. Finally Block — Guaranteed execution
  72. Throw & Throws — Propagating exceptions
  73. Custom Exceptions — Creating your own exceptions
  74. File I/O Basics — Reading and writing files
  75. File Class — File operations and metadata
  76. Buffered I/O — Efficient file handling
  77. Serialization — Saving objects to files
  78. Collections Overview — Collection interfaces
  79. List Interface — ArrayList, LinkedList
  80. Set Interface — HashSet, TreeSet
  81. Map Interface — HashMap, TreeMap
  82. Iterators — Traversing collections
  83. Collections Utility — Sort, search, shuffle
  84. Generics Basics — Type-safe collections
  85. Generic Classes — Creating generic types
  86. Generic Methods — Type parameters in methods
  87. Wildcards — ? extends and ? super
  88. Lambda Expressions — Functional programming
  89. Functional Interfaces — Predicate, Consumer, Function
  90. Streams Introduction — Processing collections
  91. Stream Operations — filter, map, reduce
  92. Collectors — Collecting stream results
  93. JavaFX Basics — GUI programming
  94. JavaFX Controls — Buttons, labels, text fields
  95. Layout Managers — VBox, HBox, GridPane
  96. Event Handling — Button clicks, keyboard events
  97. JavaFX Styling — CSS for JavaFX
  98. Threads Introduction — Creating and running threads
  99. Synchronization — Thread safety and locks
  100. Executor Framework — Thread pools and executors
  101. Concurrent Collections — ConcurrentHashMap, BlockingQueue
  102. JUnit Testing — Unit testing in Java
  103. Test-Driven Development — TDD methodology
  104. Singleton Pattern — Single instance design
  105. Factory Pattern — Object creation patterns
  106. Observer Pattern — Event-driven design
  107. MVC Pattern — Model-View-Controller
  108. Strategy Pattern — Interchangeable algorithms
  109. Java Project Structure — Packages, modules, build tools
  110. Maven & Gradle — Build automation
  111. Logging — SLF4J, Log4j, best practices
  112. JDBC & Database — Database connectivity
  113. Spring Boot Introduction — Enterprise Java framework
  114. REST APIs in Java — Building web services

← View the complete AIblty curriculum