See also: Java – The Complete Reference, Java Programming Language, Java Glossary, Java Bibliography, Java Reference materials
Java – A Beginner’s Guide, 8th Edition, by Herbert Schildt, 2018, B07J2ZZ29H (JvBgnGd)
Fair Use Source: B07J2ZZ29H (JvBgnGd)
About This Book:
A practical introduction to Java programming—fully revised for long-term support release Java SE 11
Thoroughly updated for Java Platform Standard Edition 11, this hands-on resource shows, step by step, how to get started programming in Java from the very first chapter. Written by Java guru Herbert Schildt, the book starts with the basics, such as how to create, compile, and run a Java program. From there, you will learn essential Java keywords, syntax, and commands.
Java: A Beginner’s Guide, Eighth Edition covers the basics and touches on advanced features, including multithreaded programming, generics, Lambda expressions, and Swing. Enumeration, modules, and interface methods are also clearly explained. This Oracle Press guide delivers the appropriate mix of theory and practical coding necessary to get you up and running developing Java applications in no time.
- Clearly explains all of the new Java SE 11 features
- Features self-tests, exercises, and downloadable code samples
- Written by bestselling author and leading Java authority Herbert Schildt
About the Author:
Herbert Schildt is one of the world’s leading programming authors and has written extensively on Java, C, C++, and C#. His books have sold millions of copies worldwide. Herb’s acclaimed books include Java: The Complete Reference, Java: A Beginner’s Guide, C: The Complete Reference, C++: The Complete Reference and C#: The Complete Reference.
Book Details:
- ASIN : B07J2ZZ29H
- Publisher : McGraw-Hill Education; 8th edition (November 9, 2018)
- Publication date : November 9, 2018
- Print length : 720 pages
Table of Contents:
Published by McGraw-Hill, 2018
- Cover (01:09 mins)
- Title Page (01:09 mins)
- Copyright Page (03:27 mins)
- Contents at a Glance (01:09 mins)
- Contents (09:12 mins)
- Introduction (12:39 mins)
- 1 Java Fundamentals (60:57 mins)
- 2 Introducing Data Types and Operators (46:00 mins)
- 3 Program Control Statements (56:21 mins)
- 4 Introducing Classes, Objects, and Methods (43:42 mins)
- 5 More Data Types and Operators (75:54 mins)
- 6 A Closer Look at Methods and Classes (67:51 mins)
- 7 Inheritance (64:24 mins)
- 8 Packages and Interfaces (56:21 mins)
- 9 Exception Handling (42:33 mins)
- 10 Using I/O (66:42 mins)
- 11 Multithreaded Programming (66:42 mins)
- 12 Enumerations, Autoboxing, Static Import, and Annotations (44:51 mins)
- 13 Generics (57:30 mins)
- 14 Lambda Expressions and Method References (50:36 mins)
- 15 Modules (50:36 mins)
- 16 Introducing Swing (58:39 mins)
- A Answers to Self Tests (70:09 mins)
- B Using Java’s Documentation Comments (10:21 mins)
- C Compile and Run Simple Single-File Programs in One Step (03:27 mins)
- D Introducing JShell (17:15 mins)
- E More Java Keywords (06:54 mins)
- Index (29:54 mins)
Detailed Table of Contents
- The History and Philosophy of Java
- Object-Oriented Programming
- The Java Development Kit
- A First Simple Program
- Handling Syntax Errors
- A Second Simple Program
- Another Data Type
- Try This 1-1: Converting Gallons to Liters
- Two Control Statements
- Create Blocks of Code
- Semicolons and Positioning
- Indentation Practices
- Try This 1-2: Improving the Gallons-to-Liters Converter
- The Java Keywords
- Identifiers in Java
- The Java Class Libraries
- Chapter 1 Self Test
2 Introducing Data Types and Operators
- Why Data Types Are Important
- Java’s Primitive Types
- The Boolean Type
- Try This 2-1: How Far Away Is the Lightning?
- Literals
- A Closer Look at Variables
- The Scope and Lifetime of Variables
- Operators
- Arithmetic Operators
- Relational and Logical Operators
- Short-Circuit Logical Operators
- The Assignment Operator
- Shorthand Assignments
- Type Conversion in Assignments
- Casting Incompatible Types
- Operator Precedence
- Try This 2-2: Display a Truth Table for the Logical Operators
- Expressions
- Chapter 2 Self Test
- Input Characters from the Keyboard
- The if Statement
- Nested ifs
- The if-else-if Ladder
- The switch Statement
- Nested switch Statements
- Try This 3-1: Start Building a Java Help System
- The for Loop
- Some Variations on the for Loop
- Missing Pieces
- Loops with No Body
- Declaring Loop Control Variables Inside the for Loop
- The Enhanced for Loop
- The while Loop
- The do-while Loop
- Try This 3-2: Improve the Java Help System
- Use break to Exit a Loop
- Use break as a Form of goto
- Use continue
- Try This 3-3: Finish the Java Help System
- Nested Loops
- Chapter 3 Self Test
4 Introducing Classes, Objects, and Methods
- Class Fundamentals
- How Objects Are Created
- Reference Variables and Assignment
- Methods
- Returning from a Method
- Returning a Value
- Using Parameters
- Try This 4-1: Creating a Help Class
- Constructors
- Parameterized Constructors
- Adding a Constructor to the Vehicle Class
- The new Operator Revisited
- Garbage Collection
- The this Keyword
- Chapter 4 Self Test
5 More Data Types and Operators
- Arrays
- Try This 5-1: Sorting an Array
- Multidimensional Arrays
- Alternative Array Declaration Syntax
- Assigning Array References
- Using the length Member
- Try This 5-2: A Queue Class
- The For-Each Style for Loop
- Strings
- Using Command-Line Arguments
- Using Type Inference with Local Variables
- The Bitwise Operators
- Try This 5-3: A ShowBits Class
- The ? Operator
- Chapter 5 Self Test
6 A Closer Look at Methods and Classes
- Controlling Access to Class Members
- Try This 6-1: Improving the Queue Class
- Pass Objects to Methods
- Returning Objects
- Method Overloading
- Overloading Constructors
- Try This 6-2: Overloading the Queue Constructor
- Recursion
- Understanding static
- Try This 6-3: The Quicksort
- Introducing Nested and Inner Classes
- Varargs: Variable-Length Arguments
- Chapter 6 Self Test
- Inheritance Basics
- Member Access and Inheritance
- Constructors and Inheritance
- Using super to Call Superclass Constructors
- Using super to Access Superclass Members
- Try This 7-1: Extending the Vehicle Class
- Creating a Multilevel Hierarchy
- When Are Constructors Executed?
- Superclass References and Subclass Objects
- Method Overriding
- Overridden Methods Support Polymorphism
- Why Overridden Methods?
- Using Abstract Classes
- Using final
- The Object Class
- Chapter 7 Self Test
- Packages
- Packages and Member Access
- Understanding Protected Members
- Importing Packages
- Java’s Class Library Is Contained in Packages
- Interfaces
- Implementing Interfaces
- Using Interface References
- Try This 8-1: Creating a Queue Interface
- Variables in Interfaces
- Interfaces Can Be Extended
- Default Interface Methods
- Use static Methods in an Interface
- Private Interface Methods
- Final Thoughts on Packages and Interfaces
- Chapter 8 Self Test
- The Exception Hierarchy
- Exception Handling Fundamentals
- The Consequences of an Uncaught Exception
- Using Multiple catch Statements
- Catching Subclass Exceptions
- Try Blocks Can Be Nested
- Throwing an Exception
- A Closer Look at Throwable
- Using finally
- Using throws
- Three Additional Exception Features
- Java’s Built-in Exceptions
- Creating Exception Subclasses
- Try This 9-1: Adding Exceptions to the Queue Class
- Chapter 9 Self Test
- Java’s I/O Is Built upon Streams
- Byte Streams and Character Streams
- The Byte Stream Classes
- The Character Stream Classes
- The Predefined Streams
- Using the Byte Streams
- Reading and Writing Files Using Byte Streams
- Automatically Closing a File
- Reading and Writing Binary Data
- Try This 10-1: A File Comparison Utility
- Random-Access Files
- Using Java’s Character-Based Streams
- File I/O Using Character Streams
- Using Java’s Type Wrappers to Convert Numeric Strings
- Try This 10-2: Creating a Disk-Based Help System
- Chapter 10 Self Test
- Multithreading Fundamentals
- The Thread Class and Runnable Interface
- Creating a Thread
- Try This 11-1: Extending Thread
- Creating Multiple Threads
- Determining When a Thread Ends
- Thread Priorities
- Synchronization
- Using Synchronized Methods
- The synchronized Statement
- Thread Communication Using notify( ), wait( ), and notifyAll( )
- Suspending, Resuming, and Stopping Threads
- Try This 11-2: Using the Main Thread
- Chapter 11 Self Test
12 Enumerations, Autoboxing, Static Import, and Annotations
- Enumerations
- Java Enumerations Are Class Types
- The values( ) and valueOf( ) Methods
- Constructors, Methods, Instance Variables, and Enumerations
- Enumerations Inherit Enum
- Try This 12-1: A Computer-Controlled Traffic Light
- Autoboxing
- Type Wrappers
- Autoboxing Fundamentals
- Autoboxing and Methods
- Autoboxing/Unboxing Occurs in Expressions
- Static Import
- Annotations (Metadata)
- Chapter 12 Self Test
- Generics Fundamentals
- A Simple Generics Example
- Bounded Types
- Using Wildcard Arguments
- Bounded Wildcards
- Generic Methods
- Generic Constructors
- Generic Interfaces
- Try This 13-1: Create a Generic Queue
- Raw Types and Legacy Code
- Type Inference with the Diamond Operator
- Local Variable Type Inference and Generics
- Erasure
- Ambiguity Errors
- Some Generic Restrictions
- Continuing Your Study of Generics
- Chapter 13 Self Test
14 Lambda Expressions and Method References
- Introducing Lambda Expressions
- Block Lambda Expressions
- Generic Functional Interfaces
- Try This 14-1: Pass a Lambda Expression as an Argument
- Lambda Expressions and Variable Capture
- Throw an Exception from Within a Lambda Expression
- Method References
- Constructor References
- Predefined Functional Interfaces
- Chapter 14 Self Test
- Module Basics
- java.base and the Platform Modules
- Legacy Code and the Unnamed Module
- Exporting to a Specific Module
- Using requires transitive
- Try This 15-1: Experiment with requires transitive
- Use Services
- Additional Module Features
- Continuing Your Study of Modules
- Chapter 15 Self Test
- The Origins and Design Philosophy of Swing
- Components and Containers
- Layout Managers
- A First Simple Swing Program
- Swing Event Handling
- Use JButton
- Work with JTextField
- Create a JCheckBox
- Work with JList
- Try This 16-1: A Swing-Based File Comparison Utility
- Use Anonymous Inner Classes or Lambda Expressions to Handle Events
- Chapter 16 Self Test
- Chapter 1: Java Fundamentals
- Chapter 2: Introducing Data Types and Operators
- Chapter 3: Program Control Statements
- Chapter 4: Introducing Classes, Objects, and Methods
- Chapter 5: More Data Types and Operators
- Chapter 6: A Closer Look at Methods and Classes
- Chapter 7: Inheritance
- Chapter 8: Packages and Interfaces
- Chapter 9: Exception Handling
- Chapter 10: Using I/O
- Chapter 11: Multithreaded Programming
- Chapter 12: Enumerations, Autoboxing, Static Import, and Annotations
- Chapter 13: Generics
- Chapter 14: Lambda Expressions and Method References
- Chapter 15: Modules
- Chapter 16: Introducing Swing
B Using Java’s Documentation Comments
- The javadoc Tags
- The General Form of a Documentation Comment
- What javadoc Outputs
- An Example That Uses Documentation Comments
C Compile and Run Simple Single-File Programs in One StepD Introducing JShell
- JShell Basics
- List, Edit, and Rerun Code
- Add a Method
- Create a Class
- Use an Interface
- Evaluate Expressions and Use Built-in Variables
- Importing Packages
- Exceptions
- Some More JShell Commands
- Exploring JShell Further