Quiz Yourself: Understanding enums (Advanced)

The subtleties of using enums in a switch statement

Quiz Yourself: Final Classes (Intermediate)

The effects of declaring a class final

Quiz Yourself: Default Methods (Advanced)

What fields can you access from default methods in interfaces?

Quiz Yourself: Manipulate Data with StringBuilder (Intermediate)

When two object references point to the same StringBuilder instance, how are changes propagated?

Quiz Yourself: Identify the Scope of Variables (Intermediate)

Nuances of variable scope in for-loops

Quiz Yourself: Inner, Nested, and Anonymous Classes (Advanced)

Java’s mechanisms and syntax for defining classes inside other classes

Quiz Yourself: String Manipulation (Intermediate)

The subtleties of string concatenation

Quiz Yourself: Variable Declaration (Intermediate)

The scope rules of Java variables and an examination of shadowing

Quiz Yourself: One-Dimensional Arrays (Intermediate)

The subtleties of using a constructor to create an array

Quiz Yourself: Custom Exceptions (Advanced)

When exactly do you need to declare an exception?

Quiz Yourself: Read and Set the Locale (Advanced)

For happy users, specify the locale correctly.

Quiz Yourself: Functional Interfaces (Advanced)

The subtleties of boxing and unboxing in streams

Quiz Yourself: Using Collectors (Advanced)

Where care is needed to get the results you expect from the Collectors class

Quiz Yourself: Threads and Executors (Advanced)

The details of relying on specific operations from ExecutorService

Quiz Yourself: Comparing Loop Constructs (Intermediate)

Which loop construct would you use when looping on manual user input? Subtleties abound...

Quiz Yourself: Wrapper Classes (Intermediate)

Two integers are instantiated with the Integer wrapper class. How do you compare their values correctly?

Quiz Yourself

Try more intermediate and advanced test questions.

Quiz Yourself

More intermediate and advanced test questions