Этот материал находится в платной подписке. Оформи премиум подписку и смотри или слушай Thinking Beyond Java 8, а также все другие курсы, прямо сейчас!
Премиум
  • Урок 1. 00:03:09
    Course Introduction
  • Урок 2. 00:05:17
    A glimpse of what you will learn from the course
  • Урок 3. 00:05:14
    Understanding the Time-Based JDK Releases
  • Урок 4. 00:02:49
    Is Java still free ?
  • Урок 5. 00:03:08
    More about the LTS Release
  • Урок 6. 00:03:46
    Java 17 is here: LTS release update and a new license(free ?)
  • Урок 7. 00:04:25
    Source Code: Downloading and how to navigate?
  • Урок 8. 00:03:18
    Section Introduction
  • Урок 9. 00:07:14
    Convenience Factory Methods for Collections: An Introduction
  • Урок 10. 00:07:24
    Convenience Factory Methods for Collections: Understanding the characteristics
  • Урок 11. 00:05:47
    Difference between the static factory of() and Collections.unmodifiableXXX()
  • Урок 12. 00:03:32
    G1 Garbage Collector: An Introduction
  • Урок 13. 00:03:50
    G1 Garbage Collector: An overview of how the G1 Garbage Collector works
  • Урок 14. 00:03:42
    Compact Strings: The basics
  • Урок 15. 00:05:11
    Compact Strings: Behind the scenes
  • Урок 16. 00:07:43
    Indify String Concatenation: A peek into the bytecode
  • Урок 17. 00:06:37
    Modularity: Why was it introduced?
  • Урок 18. 00:05:56
    Modules: Understanding the basics
  • Урок 19. 00:06:46
    Modules: Getting started with a modular application
  • Урок 20. 00:03:49
    Modules: How to requires(s) another module?
  • Урок 21. 00:05:04
    Modules: The unnamed module
  • Урок 22. 00:05:56
    Modules: The automatic module
  • Урок 23. 00:04:15
    Modules: Why do we need the automatic module?
  • Урок 24. 00:05:45
    Modules: Quick summary of named, unnamed, and automatic modules
  • Урок 25. 00:09:50
    Modules: Getting started with a multi-modular application, an example of two mod
  • Урок 26. 00:02:58
    Modules: Advantages of the module system
  • Урок 27. 00:08:09
    Understanding the Encapsulated Internal API's and jDeps
  • Урок 28. 00:05:16
    jlink, The Java Linker: An Introduction
  • Урок 29. 00:04:04
    jlink, The Java Linker: Using the tool with a single module
  • Урок 30. 00:04:06
    jlink, The Java Linker: Using the tool with two modules
  • Урок 31. 00:05:56
    JShell: An Introduction
  • Урок 32. 00:07:00
    JShell: Exploring the commands
  • Урок 33. 00:03:39
    Introduction to private methods in an interface
  • Урок 34. 00:06:32
    A quick recap of the limit and skip methods introduced in JDK 8
  • Урок 35. 00:05:50
    Stream API enhancement,takeWhile method: A prelude
  • Урок 36. 00:04:22
    Stream API enhancement,takeWhile method: Understanding the basics
  • Урок 37. 00:07:18
    Stream API enhancement,dropWhile method: Understanding the basics
  • Урок 38. 00:05:50
    Stream API enhancement: Iterate using a Predicate
  • Урок 39. 00:07:12
    Stream API enhancement: The ofNullable method
  • Урок 40. 00:04:04
    Understanding the meaning of deprecation
  • Урок 41. 00:04:21
    Deprecations and Removals
  • Урок 42. 00:02:12
    Section Introduction
  • Урок 43. 00:04:04
    Local-Variable Type Inference: An Introduction
  • Урок 44. 00:01:24
    Local-Variable Type Inference: Java is still statically typed
  • Урок 45. 00:05:25
    Local-Variable Type Inference: Where can it be used?
  • Урок 46. 00:08:27
    Local-Variable Type Inference: Examples
  • Урок 47. 00:03:57
    Local-Variable Type Inference: Some more examples
  • Урок 48. 00:07:41
    Local-Variable Type Inference: Few more examples
  • Урок 49. 00:10:01
    Local-Variable Type Inference: Final example
  • Урок 50. 00:02:09
    Local-Variable Type Inference: Benefits and Summary
  • Урок 51. 00:03:40
    A look at the orElseThrow method in the Optional class
  • Урок 52. 00:06:17
    Using the copyOf method to create an unmodifiable list, set and map
  • Урок 53. 00:04:35
    Application Class-Data Sharing: An Introduction
  • Урок 54. 00:04:59
    Application Class-Data Sharing: Getting started with Class-Data sharing
  • Урок 55. 00:03:56
    Application Class-Data Sharing: Getting started
  • Урок 56. 00:01:50
    Application Class-Data Sharing: Benefits
  • Урок 57. 00:07:18
    Improved Docker Container Detection in Java
  • Урок 58. 00:03:42
    Section Introduction
  • Урок 59. 00:05:13
    HTTP Client API: Introduction and motivation
  • Урок 60. 00:03:31
    HTTP Client API: An overview of the important components
  • Урок 61. 00:05:30
    HTTP Client API: Sending asynchronous requests
  • Урок 62. 00:01:11
    HTTP Client API: Summary
  • Урок 63. 00:04:28
    Local-Variable Syntax for Lambda Parameters: An Introduction
  • Урок 64. 00:02:28
    String API: repeat method
  • Урок 65. 00:03:05
    String API: isBlank method
  • Урок 66. 00:03:33
    String API: strip method
  • Урок 67. 00:02:25
    String API: Difference between strip and trim method
  • Урок 68. 00:04:55
    String API: lines method
  • Урок 69. 00:07:06
    Epsilon Garbage Collector: An Introduction
  • Урок 70. 00:04:01
    Z Garbage Collector: An Introduction
  • Урок 71. 00:03:02
    Deprecations and Removals: Java EE and Corba
  • Урок 72. 00:02:35
    Deprecations and Removals: Applets and Nashorn
  • Урок 73. 00:01:59
    Deprecations and Removals: JavaFX & OpenJFX
  • Урок 74. 00:05:02
    Launching Single-File Source-Code Programs: Getting started
  • Урок 75. 00:05:34
    Writing scripts using Java: Combining Shebang & Single-File Source-Code Programs
  • Урок 76. 00:05:06
    File API: Introduction to the readString and writeString methods
  • Урок 77. 00:05:20
    Predicate interface: Improving the readability of the code using the not( )
  • Урок 78. 00:06:06
    JDK Flight Recorder: An Introduction
  • Урок 79. 00:06:41
    JDK Mission Control: An Introduction
  • Урок 80. 00:06:41
    JDK Mission Control: Exploring the User Interface
  • Урок 81. 00:03:19
    JFR: Creating a recording & viewing the recording in Mission Control
  • Урок 82. 00:02:11
    Section Introduction
  • Урок 83. 00:04:53
    CompactNumberFormat: Formatting numbers in Compact form
  • Урок 84. 00:04:32
    Teeing Collector: Composing two downstream collectors
  • Урок 85. 00:03:33
    Files API: Determining equality between two files using the mismatch method
  • Урок 86. 00:04:54
    Switch Expressions: A quick preview
  • Урок 87. 00:04:00
    Shenandoah Garbage Collector: An Introduction
  • Урок 88. 00:05:40
    String API: The indent method
  • Урок 89. 00:06:58
    String API: The transform method
  • Урок 90. 00:06:45
    Java Microbenchmark Harness(JMH): An Introduction
  • Урок 91. 00:05:41
    Java Microbenchmark Harness(JMH): Getting started
  • Урок 92. 00:07:30
    Java Microbenchmark Harness(JMH): How to benchmark?
  • Урок 93. 00:01:38
    Java Microbenchmark Harness(JMH): Conclusion
  • Урок 94. 00:01:40
    Section Introduction
  • Урок 95. 00:03:27
    Socket API: Introduction to the reimplementation
  • Урок 96. 00:04:16
    Dynamic CDS Archives: An Introduction
  • Урок 97. 00:04:01
    TextBlocks: A preview, an overview
  • Урок 98. 00:04:43
    String API: The stripIndent method
  • Урок 99. 00:05:22
    String API: The translateEscapes method
  • Урок 100. 00:05:38
    String API: The formatted method
  • Урок 101. 00:03:04
    Switch Expressions: Overview of the changes
  • Урок 102. 00:01:56
    Garbage Collector: Enhancement to ZGC
  • Урок 103. 00:01:41
    Section Introduction
  • Урок 104. 00:05:11
    Switch Expressions: An Introduction
  • Урок 105. 00:05:21
    Switch Expressions: Understanding scope and yielding a value
  • Урок 106. 00:02:02
    Switch Expressions: Mixing and matching
  • Урок 107. 00:05:22
    Helpful NullPointerException: An Introduction
  • Урок 108. 00:02:28
    Garbage Collector changes: Summary
  • Урок 109. 00:05:00
    Records: A preview
  • Урок 110. 00:05:22
    Pattern Matching for instanceof: A preview
  • Урок 111. 00:01:39
    Section Introduction
  • Урок 112. 00:04:35
    Text Blocks: An Introduction
  • Урок 113. 00:06:29
    Text Blocks: An Exploration
  • Урок 114. 00:04:59
    Text Blocks: Introduction to the two escape sequences
  • Урок 115. 00:04:02
    Text Blocks: Overview of what the compiler is doing
  • Урок 116. 00:03:01
    Helpful NullPointerException: Overview of the changes
  • Урок 117. 00:05:35
    Records: Understanding the basics
  • Урок 118. 00:08:41
    Records: Understanding Local Records
  • Урок 119. 00:04:03
    Sealed Class: An Introduction
  • Урок 120. 00:05:05
    Sealed Class: Examples and Benefits
  • Урок 121. 00:04:23
    Other notable changes: A quick summary
  • Урок 122. 00:02:14
    Section Introduction
  • Урок 123. 00:05:08
    Records: Behind the scenes
  • Урок 124. 00:03:10
    Records: Creating a record from Map.Entry
  • Урок 125. 00:04:37
    Records: Using Records as a compound key in a Map
  • Урок 126. 00:05:58
    Records: Using Records to return multiple values
  • Урок 127. 00:03:34
    Records: Use cases
  • Урок 128. 00:03:43
    Stream API: A quick recap of the flatMap method
  • Урок 129. 00:05:30
    Stream API: Introduction to the mapMulti method
  • Урок 130. 00:03:26
    Stream API: Refactoring using the mapMulti method & using the new toList method
  • Урок 131. 00:04:53
    Pattern Matching for instanceof: An Introduction
  • Урок 132. 00:05:38
    Pattern Matching for instanceof: Understand the scope of binding variables
  • Урок 133. 00:04:29
    Pattern Matching for instanceof: Future
  • Урок 134. 00:06:41
    Using Sealed Types and Records together
  • Урок 135. 00:07:46
    Understanding how the JDK Internals are strongly encapsulated by default
  • Урок 136. 00:03:53
    jpackage, packaging self-contained Java applications: An Introduction
  • Урок 137. 00:04:52
    jpackage, packaging self-contained Java applications : Getting started
  • Урок 138. 00:03:47
    Value-Based Classes: Warnings and motivation
  • Урок 139. 00:01:36
    Section Introduction
  • Урок 140. 00:04:18
    Sealed Classes and Conversions
  • Урок 141. 00:02:36
    Strong encapsulation of JDK Internals: The next step
  • Урок 142. 00:02:35
    Quick overview of Removals and Deprecations
  • Урок 143. 00:06:21
    Pattern Matching for switch: A preview
  • Урок 144. 00:07:03
    Pattern Matching for switch: Compiling code with a preview feature using maven
  • Урок 145. 00:05:08
    Pattern Matching for switch: Enhanced type checking in a switch statement
  • Урок 146. 00:02:04
    Section Introduction
  • Урок 147. 00:03:23
    Getting started with build tools and plugins
  • Урок 148. 00:09:12
    JAXB related problem & solution during migration
  • Урок 149. 00:05:48
    Migration problem: A simple Hibernate based application
  • Урок 150. 00:08:16
    Migration solution: Upgrading to the correct version of Hibernate
  • Урок 151. 00:01:27
    Upgrading to the correct version of Spring & Spring Boot
  • Урок 152. 00:09:36
    Upgrading to Java 17: A simple example of Spring Boot based application
  • Урок 153. 00:03:52
    The next big things in Java
  • Урок 154. 00:00:41
    Thank you !