search for books and compare prices
Tables of Contents for Technical Java
Chapter/Section Title
Page #
Page Count
Preface
xxi
 
Acknowledgments
xxv
 
Introduction to Java
1
10
A Brief History of Java
2
3
Humble Beginnings
2
1
Java 1.0
2
1
Java 1.1
3
1
Java 1.2
3
1
Java 1.3 and Java 1.4
4
1
The Future
4
1
What Java Is
5
2
Simple and Familiar
5
1
Object Oriented
5
1
Interpreted and Platform Neutral
5
1
Robust
6
1
Secure
6
1
Multithreaded
7
1
Versatile and Expandable
7
1
Installing Java on Your Machine
7
1
Compiling and Running Java Programs
8
3
Moving from Fortran to Java
11
10
Program Structure
12
1
Basic Syntax
13
1
Variables
14
1
Subroutines, Functions, and Methods
15
1
Arrays
16
1
Dynamic Memory Allocation
17
1
Pointers
17
1
Exception Handling
18
1
Libraries
18
1
Built-in Math Functions
19
1
Input/Output Capability
19
1
GUIs and Web-Based Applications
20
1
Moving From C to Java
21
10
Program Structure
22
1
Basic Syntax
23
1
Java Classes vs. C Structs
23
1
Variables
24
1
Pointers
25
1
Functions and Methods
25
1
Arrays
26
1
Dynamic Memory Allocation
27
1
Exception Handling
28
1
C Libraries and the Java APIs
28
1
Strings
29
1
Built-in Math Functions
29
1
Basic Printing
30
1
Input/Output Capability
30
1
GUIs and Web-Based Applications
30
1
Moving from C++ to Java
31
6
Basic Syntax
32
1
Preprocessor Directives
32
1
Data Types
33
1
Pointers
33
1
Structures, Unions, Enumerations
34
1
Inheritance and Interfaces
34
1
Built-In Math Functions
34
1
Standard I/O
35
1
Strings
35
1
Memory Management
35
2
An Overview of Object-Oriented Programming Concepts
37
4
Objects
37
1
Classes
38
1
Encapsulation
38
1
Inheritance
39
1
Polymorphism
40
1
Basic Syntax
41
24
General Syntax and a Simple Java Program
41
2
Example: A Simple Java Program
42
1
Comments
43
1
Example: Using Comments
43
1
Operators
44
10
Arithmetic Operators
44
1
Assignment Operators
45
1
Increment/Decrement Operators
46
1
Relational Operators
47
1
Boolean Operators
48
2
Bitwise Operators
50
1
Miscellaneous Operators
51
2
Operator Precedence
53
1
Loops and Other Flow of Control Structures
54
6
if--else Statements
54
1
while Loops
55
1
do--while Loops
56
1
for Loops
57
2
switch Statements
59
1
Transfer of Control Statements
60
2
break Statements
60
1
continue Statements
61
1
return Statements
62
1
Basic Printing and Keyboard I/O
62
3
Classes
65
26
Class Declaration Syntax
66
1
Access Privileges
67
1
Objects
68
1
Declaring Fields
69
1
Declaring Methods
70
2
Constructors
72
2
Static Initialization Blocks
74
1
Making Copies of Objects
75
2
Nested Classes
77
4
Static Nested Classes
78
1
Instance Nested Classes
78
2
Anonymous Inner Classes
80
1
Encapsulation
81
1
Inheritance
82
4
Inheritance and Access Modifiers
84
1
Inheritance and Method Arguments
85
1
Member Hiding and Member Overriding
86
1
The super Keyword
86
1
The this Keyword
86
1
Abstract Classes
87
2
Final Classes
89
1
The Garbage Collector
89
2
Variables
91
20
Primitive and Reference Type Variables
92
3
Instance and Class Variables
95
3
Creating Variables
98
3
Naming Conventions and Restrictions
101
1
Access Modifiers
102
1
Accessing Variable Values
103
2
Final Variables
105
1
Transient and Volatile Variables
106
1
Casting
106
2
Variable Scope
108
3
Methods
111
20
Declaring Methods
112
2
Naming Conventions
114
1
Access Modifiers
114
2
Instance Methods
116
2
Static Methods
118
1
The main () Method
119
2
Input Parameters
121
2
Passing Arguments to Methods
121
2
Abstract Methods
123
1
Final Methods
124
1
The native and synchronized Keywords
124
1
Method Chaining
124
2
Method Overloading
126
1
Method Overriding
127
2
The return Statement
129
2
Interfaces
131
8
Differences Between Interfaces and Abstract Classes
132
1
Declaring an Interface
132
1
Interface Members
133
1
Implementing an Interface
134
2
Interfaces and Inheritance
136
1
Interface Instances as Input Parameters and Return Types
136
3
Packages and Jar Files
139
10
Defining a Package
140
2
import Declarations
142
1
Classpath Environment Variable
143
1
Packages and Access Control
144
1
JAR Files
145
4
Exception Handling
149
10
The Exception Class Hierarchy
150
1
try Statements
151
4
The try Statement
152
1
The catch Clause
152
1
The finally Clause
153
2
The throw and throws Keywords
155
4
Arrays
159
14
One-Dimensional Arrays
160
1
Two-Dimensional Arrays
161
3
Arrays of More than Two Dimensions
164
1
Initializing Array Elements
164
2
Accessing Array Elements
166
1
Arrays as Method Arguments and Return Types
167
2
Array Length
169
1
Collection Classes in the Java API
170
3
The Java Class Libraries
173
6
Package Naming Conventions
174
1
The Core J2SE Libraries
174
2
java.io
174
1
java.lang
175
1
java.math
175
1
java.util
175
1
The GUI Libraries
176
3
java.awt
176
1
java.awt.event
176
1
javax.swing
177
1
javax.swing.border
177
1
javax.swing.event
177
1
javax.swing.table
177
1
javax.swing.text
178
1
javax.swing.tree
178
1
Primitive Variable Wrapper and String Classes
179
18
Primitive Variable Wrapper Classes
180
1
Creating Primitive Variable Wrapper Class Objects
181
3
Converting a Wrapper Class Object to a Primitive Value
184
1
The parse ( ) Methods
185
1
The String Class
186
1
Obtaining String Objects
187
2
Concatenating Strings
189
1
Other Important String Class Methods
190
3
Converting Primitive and Reference Types to Strings
193
1
Converting Strings to Primitive Values
193
4
Built-in Math Functions
197
18
Math and StrictMath Classes
198
1
Mathematical Constants
199
1
Absolute Value Methods
199
2
Power and Square Root Methods
201
2
Transcendental Math Functions
203
1
Trigonometric Methods
204
2
Conversion Methods
206
2
Minimum and Maximum Methods
208
1
Rounding and Remainder Methods
209
2
Random Number Generator Methods
211
1
The java.math Package
212
1
Comparing the Built-in Math Capability of C, C++, Fortran, and Java
212
2
References
214
1
User-Defined Math Functions
215
10
Basic Plan of Attack
216
1
The Math2 Class
216
1
Logarithm Methods
217
1
Hyperbolic Trigonometric Methods
218
1
The Gamma Function
219
1
The Final Version of the Math2 Class
220
2
Compiling the Math2 Class
222
1
Using Math2 Class Methods
222
1
Comparing Java, C, and Fortran Values
223
1
References
224
1
Building Class Hierarchies
225
22
Defining the State and Behavior of a Gas Mixture
226
1
The General Class Hierarchy Structure
227
2
AbstractGas Class
229
1
PerfectGas Class
230
3
Air Class
233
1
RealGas Class
234
4
Species Class
238
2
N2 Class
240
1
N Class
241
1
NitrogenGas Class
242
3
Summary
245
1
References
246
1
Solving Systems of Equations
247
24
General Considerations
248
1
The EqnSolver Class
249
1
Test Case
249
1
Pivoting
250
3
Gauss-Jordan Elimination
253
2
Gaussian Elimination
255
2
Lower-Upper Decomposition
257
4
Matrix Inversion
261
2
Testing the EqnSolver Class Methods
263
2
Real Gas Viscosity Method
265
6
Solving Differential Equations
271
36
Ordinary Differential Equations
272
1
The ODE Class
273
2
Initial Value Problems
275
1
Runge-Kutta Schemes
276
4
Example Problem: Damped Spring Motion
280
5
SpringODE class
282
1
Solving the Spring Motion ODE
283
2
Embedded Runge-Kutta Solvers
285
6
Other ODE Solution Techniques
291
1
Two-Point Boundary Problems
292
1
Shooting Methods
292
4
Example Problem: Compressible Boundary Layer
296
9
The CompressODE Class
300
3
Solving the Compressible Boundary Layer Equations
303
2
Other Two-Point Boundary Solution Techniques
305
1
Partial Differential Equations
306
1
References
306
1
Integration of Functions
307
26
General Comments
308
1
Trapezoidal Algorithms
309
5
Simpson's Rule
314
3
Solving Improper Integrals
317
5
Gaussian Quadrature Methods
322
4
General Integral Types
326
1
Example: Thin Airfoil Theory
326
5
References
331
2
Fourier Transforms
333
22
The Fourier Transform
334
2
Discrete Fourier Transform
336
7
Analyzing Composite Signals
343
2
Sampling Theory
345
2
Spectral Leakage
347
2
Fast Fourier Transform
349
6
Generic Class Libraries
355
10
Analyzing the Problem
356
1
Example: Least Squares Fit
356
1
Implementing the Generic Part
357
1
Implementing the Problem-Specific Part
358
3
Testing the Generic Class Library
361
4
Data Modeling and Curve Fits
365
16
Least Squares Fit to a Polynomial Equation
366
2
The DataModeling Class
368
1
The Polynomial Class
369
1
Example Problem: Curve Fitting Specific Heat Data
370
3
Fitting to Nonpolynomial Equations
373
1
The Power Class
374
4
Other Data Modeling Techniques
378
1
References
379
2
Java I/O
381
38
General Concepts
382
2
Byte Input Streams
384
6
InputStream Class
385
1
BufferedInputStream Class
385
1
ByteArrayInputStream Class
386
1
DataInputStream Class
386
1
FileInputStream Class
387
1
FilterInputStream Class
388
1
ObjectInputStream Class
388
1
Other InputStream Subclasses
389
1
Byte Output Streams
390
6
OutputStream Class
391
1
BufferedOutputStream Class
391
1
ByteArrayOutputStream Class
392
1
DataOutputStream Class
392
1
FileOutputStream Class
393
1
FilterOutputStream Class
394
1
ObjectOutputStream Class
394
1
PrintStream Class
395
1
Character Input Streams
396
4
Reader Class
397
1
BufferedReader Class
398
1
FileReader Class
398
1
InputStreamReader Class
399
1
Other Reader Subclasses
399
1
Character Output Streams
400
4
Writer Class
400
1
BufferedWriter Class
401
1
FileWriter Class
401
1
OutputStreamWriter Class
402
1
PrintWriter Class
402
2
OtherWriter Subclasses
404
1
Test Case: An Atmosphere Modeling Tool
404
4
Getting Input from Command Line Arguments
408
2
Using the Standard I/O Streams
410
2
Reading and Writing to a File
412
3
Saving and Restoring Objects
415
3
The java.nio Packages
418
1
References
418
1
An Introduction to Java GUIs
419
16
The Java GUI Libraries
420
1
The AtmGUI Class
421
1
Choosing a Container
422
1
Selecting the GUI Components
423
2
Adding the Components to the Container
425
2
Event Handlers
427
3
Other GUI elements
430
1
The Final Form of the AtmGUI class
430
5
Creating Web-Based Applications Using Java Servlets
435
14
Web-Based Application Basics
436
1
Java Servlets
437
1
Required Libraries and Tools
438
1
Example: A Web-Based Atmosphere Modeling Tool
438
1
HttpServlet Class
439
1
General Form of an HttpServlet Subclass
440
1
Extracting Input Parameters
441
1
Running Server-Based Applications
442
1
Sending Output Back to the Client Machine
443
1
The AtmServlet Class
443
4
Deploying the Web-Based Application
447
2
Appendix: Java Keywords
449
4
Index
453