Book description
Essential Java Programming Skills--Made Easy!
Fully updated for Java Platform, Standard Edition 8 (Java SE 8), Java: A Beginner's Guide, Sixth Edition gets you started programming in Java right away. Bestselling programming author Herb Schildt begins with the basics, such as how to create, compile, and run a Java program. He then moves on to the keywords, syntax, and constructs that form the core of the Java language. This Oracle Press resource also covers some of Java's more advanced features, including multithreaded programming, generics, and Swing. Of course, new Java SE 8 features such as lambda expressions and default interface methods are described. An introduction to JavaFX, Java's newest GUI, concludes this step-by-step tutorial.
Designed for Easy Learning:
- Key Skills & Concepts -- Chapter-opening lists of specific skills covered in the chapter
- Ask the Expert -- Q&A sections filled with bonus information and helpful tips
- Try This -- Hands-on exercises that show you how to apply your skills
- Self Tests -- End-of-chapter quizzes to reinforce your skills
- Annotated Syntax -- Example code with commentary that describes the programming techniques being illustrated
The book's code examples are available FREE for download.
Table of contents
- Cover
- About the Author
- Title Page
- Copyright Page
- Contents at a Glance
- Contents
- Introduction
-
Chapter 1: Java Fundamentals
- The Origins of Java
- Java’s Contribution to the Internet
- Java’s Magic: The Bytecode
- The Java Buzzwords
- Object-Oriented Programming
- Obtaining 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
-
Chapter 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
-
Chapter 3: Program Control Statements
- 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
-
Chapter 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 finalize( ) Method
- Try This 4-2: Demonstrate Garbage Collection and Finalization
- The this Keyword
- Chapter 4: Self Test
-
Chapter 5: More Data Types and Operators
- Arrays
- Try This 5-1: Sorting an Array
- Multidimensional Arrays
- Irregular 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
- The Bitwise Operators
- Try This 5-3: A ShowBits Class
- The ? Operator
- Chapter 5: Self Test
-
Chapter 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
-
Chapter 7: Inheritance
- 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
-
Chapter 8: Packages and Interfaces
- 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
- Final Thoughts on Packages and Interfaces
- Chapter 8: Self Test
-
Chapter 9: Exception Handling
- 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 Recently Added Exception Features
- Java’s Built-in Exceptions
- Creating Exception Subclasses
- Try This 9-1: Adding Exceptions to the Queue Class
- Chapter 9: Self Test
-
Chapter 10: Using I/O
- 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
-
Chapter 11: Multithreaded Programming
- 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
-
Chapter 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
-
Chapter 13: Generics
- 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
- Erasure
- Ambiguity Errors
- Some Generic Restrictions
- Continuing Your Study of Generics
- Chapter 13: Self Test
-
Chapter 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
-
Chapter 15: Applets, Events, and Miscellaneous Topics
- Applet Basics
- Applet Organization and Essential Elements
- The Applet Architecture
- A Complete Applet Skeleton
- Applet Initialization and Termination
- Requesting Repainting
- Try This 15-1: A Simple Banner Applet
- Using the Status Window
- Passing Parameters to Applets
- The Applet Class
- Event Handling
- The Delegation Event Model
- Events
- Using the Delegation Event Model
- More Java Keywords
- Chapter 15: Self Test
-
Chapter 16: Introducing Swing
- The Origins and Design Philosophy of Swing
- Components and Containers
- Layout Managers
- A First Simple Swing Program
- 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
- Create a Swing Applet
- Chapter 16: Self Test
-
Chapter 17: Introducing JavaFX
- JavaFX Basic Concepts
- A JavaFX Application Skeleton
- Compiling and Running a JavaFX Program
- The Application Thread
- A Simple JavaFX Control: Label
- Using Buttons and Events
- Three More JavaFX Controls
- Try This 17-1: Use the CheckBox Indeterminate State
- Introducing Effects and Transforms
- What Next?
- Chapter 17: Self Test
-
Appendix A: Answers to Self Tests
- 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: Applets, Events, and Miscellaneous Topics
- Chapter 16: Introducing Swing
- Chapter 17: Introducing JavaFX
- Appendix B: Using Java’s Documentation Comments
- Index
Product information
- Title: Java: A Beginner's Guide, Sixth Edition, 6th Edition
- Author(s):
- Release date: April 2014
- Publisher(s): McGraw Hill Computing
- ISBN: 9780071823593
You might also like
book
Java, A Beginner's Guide, 5th Edition, 5th Edition
Essential Java programming skills made easy From Herb Schildt, the number-one programming author worldwide, comes this …
book
Java: A Beginner's Guide, Ninth Edition, 9th Edition
A practical introduction to Java programming—fully revised for the latest version, Java SE 17 Thoroughly updated …
book
Java: A Beginner's Guide, Eighth Edition, 8th Edition
A practical introduction to Java programming—fully revised for long-term support release Java SE 11 Thoroughly updated …
book
Java: A Beginner's Guide, 7th Edition
Up-to-Date, Essential Java Programming Skills—Made Easy! Fully updated for Java Platform, Standard Edition 9 (Java SE …