Language · Beginner to intermediate

Java, properly — a full course for placements

Twelve lessons from the JVM to the Collections framework, written around the questions service companies actually ask in the technical round.

12 lessons 121 min of reading Free · no account

Why this course exists

Java is the language most Indian service companies interview in, and the questions are remarkably stable year to year — the string pool, equals and hashCode, ArrayList against LinkedList, checked against unchecked. Most students learn Java as syntax for writing programs and then meet those questions cold. This course teaches the language and the questions as one thing.

What you need first
  • No programming experience assumed
  • A JDK 17 or newer, or any online Java compiler
Who it is for

Engineering students preparing for campus placements

What you will be able to do afterwards

  • Explain what javac produces, what the JVM does with it, and why Java is called platform independent
  • Answer the string pool and == against equals questions completely, with an example
  • Present the four pillars of OOP with code rather than definitions
  • Choose the right collection on complexity, and say how HashMap works internally
  • Write equals and hashCode correctly, and say what breaks when you write only one
  • Handle the checked against unchecked exception question and try-with-resources

The 12 lessons

Read in order, or jump to what you need.

01 How Java runs: javac, bytecode and the JVM 9 min What javac produces, what the JVM does with it, the difference between JDK, JRE and JVM, and how to answer platform independence without a slogan. 02 Primitives, wrappers and the == trap 10 min The eight primitives and their sizes, autoboxing, why Integer 127 equals Integer 127 but Integer 128 does not, casting rules and integer overflow. 03 Strings, the string pool and StringBuilder 10 min Why strings are immutable, what the string pool is and how it makes == misleading, when StringBuilder is required, and the methods worth knowing cold. 04 Arrays, and the Arrays utility class 9 min Fixed length and default values, jagged arrays, why Arrays.sort uses two different algorithms, and the copy and equality methods people get wrong. 05 Classes, objects and constructors 10 min Fields, methods, this, constructor overloading and chaining, static against instance, and the order in which initialisation actually happens. 06 Inheritance and polymorphism 10 min extends and super, overriding against overloading, dynamic dispatch, upcasting, final, and why multiple class inheritance is out. 07 Abstract classes and interfaces 10 min What each is for, the full comparison, default and static interface methods, functional interfaces, and how to answer which one you would use. 08 Encapsulation, access modifiers and packages 9 min The four access levels and what package-private really means, why encapsulation is about invariants, and the four pillars answered with code. 09 Exceptions, checked and unchecked 10 min The hierarchy, why the compiler forces you to handle some exceptions, finally against try-with-resources, and what a return inside finally does. 10 The Collections framework 12 min List, Set, Map and Queue and which to pick; ArrayList against LinkedList; how HashMap works inside; and why iterators are fail-fast. 11 Generics, equals and hashCode, and sorting 11 min Why generics exist and what erasure means, wildcards and PECS, the equals and hashCode contract, and Comparable against Comparator. 12 Lambdas, streams and the closing questions 11 min Lambdas and method references, the stream pipeline and why it is lazy, Optional, and the garbage collection and memory questions that end a Java round.

After the reading

This course has no quiz. The practice is real code.

You can finish every lesson here without an account, and you should. But reading about Java and writing it under a timer are different skills, and only one of them gets you through a coding round. That part needs a compiler, hidden test cases and somebody paying for the compute — so it lives inside the platform.

Java practice track

What the graded practice adds

Every topic here has graded coding problems inside PlacedElite — compiled and run against hidden test cases, with the failing input shown after a genuine attempt.

  • Graded problems per topic, unlocked in order
  • Compiled and judged against hidden test cases
  • Editorials that explain the approach, not the answer

Or keep reading free — the other courses are open too.

Also free

The other courses on this site

Free to learn · paid to be measured

Read the courses for nothing. Pay when you want to be marked.

Every lesson on this site is free and needs no account. What a subscription buys is the graded practice, the full-length mocks, the spoken AI interviews and a readiness score you can act on.