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...
Clasificación: | Libro Electrónico |
---|---|
Autor principal: | |
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.