Autoplay
Autocomplete
Previous Lesson
Complete and Continue
Extreme Java - Advanced Topics
Resources - Slides & Exercises
ExtremeJavaAdvancedTopics-2.0 Slides
Exercise Files
1 - Introduction
Hello & Welcome (11:45)
Java 7 & 8 Primer (7:07)
2. Java IO
Introduction (1:42)
2.1 - Object Streams
Serialization with the Decorator Pattern (23:11)
java.io.Serializable (4:33)
Serializing own objects (4:23)
Caching of objects (15:18)
writeObject() and readObject() (7:59)
Versioning of objects (6:18)
Exercises (4:07)
Exercise Walkthrough: Serialization (18:26)
2.2 - Java new IO
Introduction (2:30)
Creating buffers (5:00)
Little and big endian (7:19)
Writing and reading buffers with channels (16:54)
Memory mapped files (12:53)
Non-blocking IO (0:56)
Exercises (1:33)
Exercise Walkthrough: MappedByteBuffer (9:33)
3 - Memory
Introduction (2:24)
3.1 - Garbage Collection
Introduction (1:02)
Stack memory StackOverflowError (3:03)
Heap management (1:08)
Weak generational hypothesis (2:00)
Generational spaces (10:10)
Stop-the-world (2:24)
Heap fragmentation (2:43)
Escape analysis (2:33)
Pros and cons of GC (3:05)
Measuring GC activity (9:51)
Exercises (1:47)
Exercise Walkthrough: ThreadMemoryTest (11:49)
Extra: VisualGC Plugin & Censum (15:47)
3.2 Solving Common Memory Problems
Common memory problems (4:31)
Memory leaks (2:48)
Loitering objects (4:32)
Object churn (2:52)
Sizing generational spaces (8:16)
Exercises (0:30)
Exercise Walkthrough: FibonacciCalculator (19:52)
3.3 Finalizers
Finalizers (9:53)
4 - Reflection
Introduction (12:40)
Manipulating objects (9:05)
Exercises (2:33)
Exercise Walkthrough: MagicClassInstantiator (8:05)
Exercise Walkthrough: Deep cloning arrays (14:43)
5 - Data Structures
Introduction (4:05)
5.1 Computational Time Complexity
Computational Time Complexity (10:21)
5.2 Iteration
Iterator (8:58)
Copy-on-write collections (4:00)
Exercises (2:20)
Exercise Walkthrough: TextFile (15:46)
Exercise Walkthrough: Files.lines() (5:13)
5.3 Hashing
How hashing works (11:23)
Hashing - compound keys (10:39)
Exercises (1:08)
Exercise Walkthrough: Pixel hashCode (8:13)
5.4 Sorting and Searching
Sorting lists and arrays (4:04)
Natural order with Comparable (6:35)
Comparators (12:01)
TreeMap and TreeSet (0:57)
Exercises (2:22)
Exercise Walkthrough: Programmer rich smart (8:46)
5.4 Queues
Queues (7:57)
Deques (1:38)
6 - Exceptions
Introduction (0:53)
Error handling (4:34)
Best practices (19:42)
Assertions (5:44)
Exercises (0:56)
Exercise Walkthrough: Thread pool exceptions and assertions (8:22)
7 - Dates and Time Zones
Introduction (3:34)
Time in Java (6:34)
Java 8 - JSR 310 (8:37)
Exercises (0:49)
Exercise Walkthrough: Date formatting horror (5:26)
8 - Logging
Everyone likes to write a logging framework (3:07)
Overview (7:37)
Exercises (0:33)
Exercise Walkthrough: Logging thread pool (18:35)
Best practices (6:00)
Impact on performance (9:15)
9 - Conclusion
Where to next? (6:41)
Teach online with
Sizing generational spaces
Lesson content locked
If you're already enrolled,
you'll need to login
.
Enroll in Course to Unlock