Chapter 1 - Overview of Java
|
| |
- History Of Java
- Benefits Of Java
- What Is Java?
- What's This "Virtual Machine"?
- Comparison to Other Languages
- Java Programs
- Basic Java Development Tools
- Java Editions
- Example – HelloWorld
- Java Classes
- Main Methods
- Statements
- Summary
|
| |
Chapter 2 - Java Tools in RAD
|
| |
- Intro to RAD
- Eclipse Platform
- Eclipse Workspace
- Perspectives, Views & Editors
- Perspectives, Views & Editors
- Basic Operations with Eclipse Views and Perspectives
- The Java Perspective
- The Debug Perspective
- Navigator View
- Package Explorer
- Outline View
- Problems View
- Eclipse Preferences
- Build and Validation
- Code Completion, Templates and Snippets
- Searching
- Configure Compiler Class Path
- JRE Switching
|
| |
Chapter 3 - Basic Object Concepts
|
| |
- What Is An Object?
- State
- Behavior
- Encapsulation
- Encapsulation Examples
- Classes vs. Objects
- Inheritance
- Interfaces
- Polymorphism
- Benefits Of Objects
- Summary
|
| |
Chapter 4 - Basic Java Syntax
|
| |
- Declaring And Initializing Variables
- Keywords
- Coding Tips – Variables
- Primitive Data Types
- Logical - boolean
- Textual - char and String
- Integral - byte, short, int, long
- Floating Point - float and double
- Literal Values
- Strings
- Creating Strings
- White Space
- Comments
- Coding Tips - Comments
- Java Statements
- Coding Tips - Statements
- Scope of a Variable
- System.out/System.in
- Scanner Class
- Summary
|
| |
Chapter 5 - Operations and Making Decisions
|
| |
- Operator Categories
- Special Situations
- Binary Operators
- Integer Division
- Numeric Promotion
- Type Conversion Of Primitive Types
- Unary Operators
- Relational Operators
- Logical Operators
- Bitwise Operators
- Bitwise Examples
- Shift Operators
- Overflow And Underflow
- Assignment Operators
- Ternary Operator
- Calculation Errors
- Operator Precedence
- Precedence Examples
- Combining Strings
- Coding Tips - Operators
- Control Flow Statements
- 'if' Statement
- 'if…else' Statement
- Nested Statements
- "Short Circuited" Operators
- Coding Tips - if & if-else
- Summary
|
| |
Chapter 6 - Using Classes and Objects
|
| |
- Objects, Instances, And Classes
- What Are Classes?
- Working With Classes And Objects
- Working With Classes And Objects
- Instantiation
- Instance Methods
- Object References
- Object References
- String Operations
- The Math Class
- Summary
|
| |
Chapter 7 - Writing Classes
|
| |
- Why Define Your Own Classes?
- Encapsulation
- Elements Of A Class
- Defining Classes
- Coding Tips - Class Definitions
- Fields
- Defining Fields
- Coding Tips - Fields
- Methods
- Defining Methods
- Passing Parameters
- Overloading Methods
- Coding Tips - Methods
- Local Variables vs. Instance Variables
- Example - Defining a Class
- Example - Fields
- Example - Fields
- Example - Defining a Method
- Example - Calling a Method
- Summary
|
| |
Chapter 8 - Controlling Code Access and Code Organization
|
| |
- Controlling Access
- Data Hiding
- Encapsulation
- JavaBeans
- Packages
- Problems Solved With Packages
- Naming Packages
- Declaring Packages In Classes
- Package Access
- Example - Access Modifiers
- Import Statement
- Using Classes From Packages
- Coding Tips - Import Statements
- Correlation To File Structure
- Class Path
- Java Core Packages
- Java API Documentation
- Summary
|
| |
Chapter 9 - Constructors and Class Members
|
| |
- Constructors
- Multiple Constructors
- Defining Constructors
- Default Constructor
- Example - Calling Constructors
- 'this' Keyword
- Using 'this' to Call a Constructor
- Using 'this' to Set a Field
- Class Members
- Examples Of Class Members
- Comparison With Instance Members
- Use Of Class Variables
- Static Class Methods
- Use Of Class Methods
- Main Method And Command Line Arguments
- Declaring Constants
- Coding Tips - Class Members
- Useful Standard Class Members
- Initialization Blocks
- Static Initialization Blocks
- Summary
|
| |
Chapter 10 - Advanced Control Structures
|
| |
- 'switch' Statement
- Example - switch
- Switch "Fall Through"
- 'for' Loop
- Example - for
- 'while' Loop
- Example - while
- 'do…while' Loop
- Example - do while
- Break Statement
- Example - break
- Labeled Statements
- Example - Labeled break
- Continue Statement
- Example - continue
- Example - Labeled continue
- Coding Tips - Control Structures
- Summary
|
| |
Chapter 11 - Arrays
|
| |
- Arrays
- Declaring Arrays
- Populating Arrays
- Accessing Arrays
- Array Length
- Coding Tips - Arrays
- Array References
- Multidimensional Arrays
- Arrays Of Arrays
- Copying Arrays
- For-Each loop
- Variable Arguments
- Variable Arguments Example
- Summary
|
| |
Chapter 12 - Inheritance
|
| |
- Inheritance Is…
- Inheritance Examples
- Declaring Inheritance
- Inheritance Hierarchy
- Access Modifiers Revisited
- Inherited Members
- Inherited Members
- Instances Of A Subclass
- Instances Of A Subclass
- Example Of Inheritance
- Role In Reuse
- The super Keyword
- Example - super Keyword
- Problems with Constructors
- Problems with Constructors
- Limiting Subclasses
- 'set' Methods in Constructors
- The Object Class
- Summary
|
| |
Chapter 13 - Commonly Overridden Methods
|
| |
- Overriding Methods
- toString()
- toString() in Object
- Overriding toString()
- Comparing Objects
- Using == vs. equals(..)
- Using == vs. equals(..)
- Overriding equals(..)
- Complex Comparisons
- equals(..) Example
- hashCode()
- Overriding hashCode()
- hashCode() Example
- Refactoring
- Refactoring
- Changing Class Name
- Changing Method Name
- Changing Variable Name
- Generalizing a Variable
- Moving a Class to a Different Package
- Extracting Code to a Method
- Pull-up and Push-down Methods
|
| |
Chapter 14 - Exceptions
|
| |
- What is an Exception
- Benefits
- The Exception Class
- How to Work With Exceptions
- Example Exception Handling
- The try-catch-finally Statement
- Flow of Program Control
- Exception Hierarchy
- Checked Exceptions
- Unchecked Exceptions
- Coding Tips - Exception Types
- Catching Multiple Exceptions
- Specifying Thrown Exceptions
- Rethrowing Exceptions
- Chaining Exceptions
- Creating your Own Exception
- Creating your Own Exception
- Assertions
- Assertion Example
- Using Assertions
- Summary
|
| |
Chapter 15 - Interfaces and Polymorphism
|
| |
- Casting Objects
- Casting Objects
- The instanceof Operator
- Abstract Classes
- Abstract Class – An Example
- Interface
- Interface – An Example
- Comparable Interface
- Comparable Example
- Coding Tips - Superclass or Interface?
- Polymorphism
- Conditions for Polymorphism
- Coding Tips - Leveraging Polymorphism
- Covariant Return Types
- Summary
|
| |
Chapter 16 - Collections and Generics
|
| |
- What are Collections?
- Arrays vs. Collections
- Main Collections Interfaces
- java.util.Collection
- Main Collection Methods
- Sets
- java.util.List
- java.util.Queue
- Iteration on a Collection
- Iteration on a Collection
- Iteration on a Collection
- Iteration on a Collection
- Iterator vs. For-Each Loop
- Maps
- java.util.Map
- java.util.SortedMap
- Collections Implementations
- Collections Implementations
- Collections Implementations
- Generics
- Generics and Collections
- Generic Collection Example
- Generic Collection Example
- Collections and Primitive Types
- "Wrapper" Classes
- Autoboxing
- Summary
|
| |
Chapter 17 - Useful Java Classes
|
| |
- Java Logging API
- Control Flow of Logging
- Logging Levels
- Logging Handlers
- Loggers
- Logging Example
- Logging Formatters & Log Manager
- Logging Configuration File
- Example Logging Configuration File
- Logging Filters
- java.lang.StringBuilder
- java.util.StringTokenizer
- java.util.Arrays & java.util.Collections
- java.util.Random
- java.util.Date
- GregorianCalendar & Calendar
- Formatting
- Formatting Example
- Summary
|
| |
Chapter 18 - Input and Output
|
| |
- Overview of Java Input/Output
- Streams
- Input Stream
- Output Stream
- "Chained" Streams
- The File Class
- File Example
- RandomAccessFile
- Reader and Writer
- Buffers
- Buffers
- Channels
- Serialization
- Serializing Object State
- Avoiding Serialization Problems
- serialVersionUID
- Options to Write Files
- Using Streams - Write Example
- Using Streams - Read Example
- Using Readers and Writers - Write Example
- Using Readers and Writers - Read Example
- Using Readers and Writers - Scanner Read Example
- Using Buffers and Channels - Write Example
- Using Buffers and Channels - Write Example
- Using Buffers and Channels - Read Example
- Using Buffers and Channels - Read Example
- Summary
|
| |
Chapter 19 - Other Java Concepts
|
| |
- Annotations
- Enumerated Types
- Garbage Collection
- JVM Storage Areas
- Assertions
- Assertions
- Assertions Example
- When to use Assertions
- Enabling Assertions
|
| |
Chapter 20 - J2EE Programming Tools
|
| |
- Project Explorer
- Servers View
- The J2EE Perspective
- The Web Perspective
- Create an Enterprise Application
- Setup Utility JAR
- Create an EJB Project
- Create a Web Project
- Setup Dependent JAR Files
- Create Server Instance and Server Configuration
- Configure Server Instance
- Add an Enterprise Application Project to the Test Server
- Start and Stop the Server
- Test a Servlet
- Debug a servlet
- Test a JSP
- Debug a JSP
- Summary
|
| |
Chapter 21 - Servlet Basics
|
| |
- History – CGI
- Server Extension APIs
- Java Servlet
- Servlet Container
- Servlet Responsibilities
- J2EE and Servlet
- The Servlet Class
- The HttpServlet Class
- An Example – Hello World
- Registering the Servlet
- The Servlet Container
- The Servlet API
- Life Cycle – Initialization
- Life Cycle – Initialization
- Example Initialization
- Life Cycle – Processing
- Life Cycle – Processing
- Life Cycle – Destroy
- User Input
- Example – User Input
- Output to Client
- Servlet Error Handling
- Threading Issues
- Threading Issues
- Summary
|
| |
Chapter 22 - JavaServer Page (JSP) Basics
|
| |
- JavaServer Pages
- A Simple Example - Hello.jsp
- JSP Benefits
- Evolution of Dynamic Content Technologies
- How JSP Works
- JSP Invocation
- Generated Servlet
- JSP Scripting Elements
- The XML Syntax
- The XML Syntax
- JSP Directive
- page Directive Attributes
- page Directive – an Example
- page Attribute – errorPage
- page Attribute – isErrorPage
- Using XML Syntax
- Directives – include
- Include – an Example
- Include – an Example
- Request time inclusion
- Include at compile time vs. at request time
- JSP Declarations
- Declarations – an Example
- JSP Expressions
- JSP Expressions – an Example
- JSP Scriptlets
- JSP Scriptlets – an Example
- JSP Scriptlets – an Example
- JSP Comments
- JSP Predefined Variables
- The request Object
- The request Object
- The response Object
- The out Object
- Out – an Example
- Summary
|
| |
Chapter 23 - J2EE Overview
|
| |
- Introduction
- Introduction
- Why Do We Need J2EE?
- J2EE Components
- J2EE Technologies
- J2EE Technologies
- Useful J2SE Technologies
- Application Artifacts
- J2EE Architecture
- J2EE 1.4 Version Levels
- J2EE Software Packaging
- Deployment Descriptor
- Enterprise Archive (EAR)
- Web Modules and WAR
- EJB Modules
- Building Module Dependency
|
| |
Chapter 24 - Overview of Java SE APIs
|
| |
- Java GUI Programming
- Image I/O
- Networking
- Remote Method Invocation
- Security
- Databases - JDBC
- Naming - JNDI
- Management - JMX
- XML
- Printing
- Summary
|