Java for Engineers and Scientists provides you with the tools, techniques, and understanding necessary to create and maintain Java programs as well as to prepare a solid foundation for more advanced work. The large numbers of examples and exercises in the text are drawn from basic engineering and scientific disciplines and are appropriate to an introductory language-based course.
KEY FEATURES
● The textbook's writing style used to convey the concepts presented is the most important and distinctive aspect of the text.
● The text provides a flexible tool that each professor can use in a variety of ways depending on how many programming concepts and programming techniques are to be introduced in a single course and when they are to be introduced.
● The textbook provides an expanded set of applendixes on keyworks, operator precedence, Unicode codes, and packages.
PART 1 Fundamentals
CHAPTER 1 Getting Started
1.1 Introduction to Programming
1.2 Algorithms, Methods, and Classes
1.3 Constructing a Java Program
1.4 The print() and println() Methods
1.5 Programming Style
1.6 Creating a Dialog Box
1.7 Common Programming Errors
1.8 Chapter Summary
1.9 Chapter Supplement: computer Hardware and Software
CHAPTER 2 Values, Variables, and Operations
2.1 Data Values and Arithmetic Operatoins
2.2 Variables and Declarations
2.3 The final Qualifier
2.4 Developing Methods
2.5 Applications
2.6 Common Programming Errors
2.7 Chapter Summary
2.8 Chapter Supplement: Programming Errors
CHAPTER 3 Assignment and Interactive Input
3.1 Assignment Operations
3.2 Formated Output
3.3 mathematical Methods
3.4 Interactive Keyboard Input
3.5 Interactive Dialoginput
3.6 Applications
3.7 Common Programming Errors
3.8 Chapter Summary
CHAPTER 4 Selection
4.1 Relational Expressions
4.2 The if-else Statement
4.3 Nested if Statements
4.4 The switch Statement
4.5 Applications
4.6 Common Programming Errors
4.7 Chapter Summary
4.8 chapter Supplement: Program Testing
CHAPTER 5 Repetition
5.1 Introduction
5.2 The while Statement
5.3 Interactive while Loops
5.4 The for Statement
5.5 Loop Programming Techniques
5.6 The do-while Statement
5.7 Common Programmin Gerrors
5.8 Chapter Summary
CHAPTER 6 General-Purpose Methods
6.1 Method and Parameter Declarations
6.2 Returning a Single Value
6.3 Applications
6.4 Variable Scope
6.5 Common Programming Errors
6.6 Chapter Summary
PART 2 Array and String Reference Types
CHAPTER 7 Arrays
7.1 One-Dimensional Arrays
7.2 Array Initialization
7.3 Applications
7.4 Arrays as Arguments
7.5 Common Programming Errors
7.6 Chapter Summary
7.7 Chapter Supplement: Search and Sort Algorithms
CHAPTER 8 Multidimensional Arrays
8.1 TWO - DIMENSIONAL ARRAYS
8.2 Matrix Operations
8.3 Applications
8.4 Common Programming Errors
8.5 chapter Summary
CHAPTER 9 String and Characters
9.1 The String Class
9.2 String Processing
9.3 The StringBuffer Class
9.4 Applications
9.5 Common Programming Errors
9.6 Chapter Summary
PART 3 Creating Classes
CHAPTER 10 Introduction to Classes
10.1 Object-Based Programming
10.2 Classes
10.3 Constructors
10.4 Applications
10.5 Common Programming Errors
10.6 Chapter Summary
10.7 Chapter Supplement: Insides And Outsides
CHAPTER 11 Additional Class Capabilities
11.1 Memberwise Assignment
11.2 Additional Class Feaures
11.3 Applicatoins
11.4 Class Inheritance
11.5 Reference Variables as Class Members
11.6 Common Programming Errors
11.7 Chater Summary
PART 4 Creating Swing-Based GUIs
CHAPTER 12 Visual Programming Basics
12.1 Event-Based Programming
12.2 Creaing a Swing-Base Window
12.3 Adding a Window-Closing Event Handler
12.4 Adding a Button Component
12.5 Common Programming Errors
12.6 Chapter Summary
CHAPTER 13 Additional Components and Event Handlers
13.1 Adding Multiple Components
13.2 Text Components For Display
13.3 Text Components For Data Entry
13.4 Adding Check Box, Radio Button, and Group Components
13.5 Keystroke Input Validation
13.6 Common Programming Errors
13.7 Chapter Summary
PART 5 Additional Programming Topics
CHAPTER 14 File I/O
14.1 Files and Streams
14.2 Writing and Reading Char Acter-Bsed Files
14.3 Writing and REading Byte-Based Files
14.4 Applicatoins
14.5 Random Access Files
14.6 The File Class
14.7 common Programming Errors
14.8 Chapter Summary
14.9 Chapter Supplement: Character and Byte File Storage
CHAPTER 15 Numerical Methods
15.1 Introduction to Root Finding
15.2 the Biesection Method
15.3 Refinemetns to The Bisection Method
15.4 The Secant Method
15.5 Introduction to Numberical Integration
15.6 The Trapezoidal Rule
15.7 Simpson's Rule
15.8 Common Programming Errors
15.9 Chapter Summary
CHAPTER 16 Additional Capabilities
16.1 ADDITOINAL FEATURES
16.2 Bit Operators
16.3 Command-Line Argumens
16.4 Chapter Summary
APPENDIX A Operator Precedence Table
APPENDIX B Unicode Character Set
APPENDIX C Compliing and Executing a Java program
APPENDIX D Obtaining Locales
APPENDIX E Creating Leading Spaces
APPENDIX F Creating and Using Packages
APPENDIX G A Keyboard Input Class
APPENDIX H Applets
APPENDIX I Real Number Storage
APPENDIX J Solutions and Source Code
JavaTM is rapidly emerging as one of the preeminent applications languages for Windowsbased systems. A major reason is that Java is a true object-oriented language that now provides a complete set of visual objects that can easily be assembled into a working graphical user interface (GUI--pronounced goo-eey) and a complete set of input/output and mathematical classes.
From both a teaching and learning viewpoint, Java requires familiarity with four elements, all of which are required for object-oriented graphical-based programming. These are:
● The concept of object-oriented program class code
● The visual objects required in creating a graphical user interface
● The input, output, and mathematical classes required for creating engineering and scientific programs
● The concept of event-based programming, where the user, rather than the programmer, determines the sequence of operations to be executed.
The major objective of this textbook is to introduce each of these elements, within the context of sound programming principles, in a manner that is accessible to the beginning programmer. Its purpose is both to provide you with the tools, techniques, and understanding necessary to create and maintain Java programs as well as to prepare a solid foundation for more advanced work. Thus, the basic goal of this text is that all topics be presented in a clear and unambiguous manner appropriate to a student taking an introductory course in Java programming.
In using this text, no prerequisites are assumed. The large numbers of examples and exercises in the text are drawn from basic engineering and scientific disciplines and are appropriate to an introductory language-based course.
Distinctive Features
Writing Style
I firmly believe that for a textbook to be useful it must provide a clearly defined supporting role to the leading role of the professor. Once the professor sets the stage, however, the textbook must encourage, nurture, and assist the student in acquiring and owning the material presented in class. To do this, the text must be written in a manner that makes sense to the student. Thus, first and foremost, I feel that the writing style used to convey the concepts presented is the most important and distinctive aspect of the text.
Flexibility
To be an effective teaching resource, this text is meant to provide a flexible tool that each professor can use in a variety of ways depending on how many programming concepts and programming techniques are to be introduced in a single course and when they are to be introduced. This is accomplished by partitioning the text into five parts and providing a varied number of Chapter Supplements that contain enrichment and breadth material.
Part One presents the fundamental object-oriented structure and procedural elements of Java. Additionally, both keyboard and dialog-based data entry are presented. This permits an early introduction of the swing package of visual objects as well as providing a firm grounding in basic Java Development Kit (JDK) techniques.
Once Part One is completed, the material in Parts Two, Three, Four, and Five are interchangeable. For example, in a more traditional introduction to programming type of course, Part One would be followed by Chapter 14 (File I/O) and Part Two, Array and String Reference Types. However, if a requirement is that the course must emphasize class design and development, Part One would be followed by Part Three. In a third instance, if the course is to have a more visual and GUI-based slant, Part One can just as easily be followed by Part Four. In each of these cases, a "pick-and-choose" approach to course structure can be implemented. This flexibility of topic introduction is illustrated by the following topic dependence chart.