Cargando…

Java language features : with modules, streams, threads, I/O, and lambda expressions /

Work with essential and advanced features of the Java programming language such as Java modules development, lambda expressions (closures), inner classes, threads, I/O, Collections, garbage collection, and more. Author Kishori Sharan provides over 50 diagrams and 290 complete programs to help you vi...

Descripción completa

Detalles Bibliográficos
Clasificación:Libro Electrónico
Autor principal: Sharan, Kishori (Software engineer) (Autor)
Formato: Electrónico eBook
Idioma:Inglés
Publicado: New York, NY : Apress, [2018]
Edición:Second edition.
Temas:
Acceso en línea:Texto completo (Requiere registro previo con correo institucional)
Tabla de Contenidos:
  • Intro; Contents; About the Author; About the Technical Reviewers; Acknowledgments; Introduction; Chapter 1: Annotations; What Are Annotations?; Declaring an Annotation Type; Restrictions on Annotation Types; Restriction #1; Restriction #2; Restriction #3; Restriction #4; Restriction #5; Restriction #6; Default Value of an Annotation Element; Annotation Type and Its Instances; Using Annotations; Primitive Types; String Types; Class Types; Enum Type; Annotation Type; Array Type Annotation Element; No Null Value in an Annotation; Shorthand Annotation Syntax; Marker Annotation Types.
  • Meta-Annotation TypesThe Target Annotation Type; The Retention Annotation Type; The Inherited Annotation Type; The Documented Annotation Type; The Repeatable Annotation Type; Commonly Used Standard Annotations; Deprecating APIs; How to Deprecate an API; Enhancements to the Deprecated Annotation in JDK9; Suppressing Deprecation Warnings; An Example; static Analysis of Deprecated APIs; Dynamic Analysis of Deprecated APIs; No Deprecation Warnings on Imports; Suppressing Named Compile-Time Warnings; Overriding Methods; Declaring Functional Interfaces; Annotating Packages; Annotating Modules.
  • Accessing Annotations at RuntimeEvolving Annotation Types; Annotation Processing at Source Code Level; Summary; Chapter 2: Inner Classes; What Is an Inner Class?; Advantages of Using Inner Classes; Types of Inner Classes; Member Inner Class; Local Inner Class; Anonymous Inner Class; A static Member Class Is Not an Inner Class; Creating Objects of Inner Classes; Accessing Enclosing Class Members; Restrictions on Accessing Local Variables; Inner Class and Inheritance; No static Members in an Inner Class; Generated Class Files for Inner Classes; Inner Classes and the Compiler Magic.
  • Closures and CallbacksDefining Inner Classes in static Contexts; Summary; Chapter 3: Reflection; What Is Reflection?; Reflection in Java; Loading a Class; Using Class Literals; Using the Object::getClass() Method; Using the Class::forName() Method; Class Loaders; Class Loaders in JDK8; Class Loaders in JDK9; Reflecting on Classes; Reflecting on Fields; Reflecting on Executables; Reflecting on Methods; Reflecting on Constructors; Creating Objects; Invoking Methods; Accessing Fields; Deep Reflection; Deep Reflection Within a Module; Deep Reflection Across Modules.
  • Deep Reflection and Unnamed ModulesDeep Reflection on JDK Modules; Reflecting on Arrays; Expanding an Array; Who Should Use Reflection?; Summary; Chapter 4: Generics; What Are Generics?; Supertype-Subtype Relationship; Raw Types; Unbounded Wildcards; Upper-Bounded Wildcards; Lower-Bounded Wildcards; Generic Methods and Constructors; Type Inference in Generic Object Creation; No Generic Exception Classes; No Generic Anonymous Classes; Generics and Arrays; Runtime Class Type of Generic Objects; Heap Pollution; Varargs Methods and Heap Pollution Warnings; Summary; Chapter 5: Lambda Expressions.