The Object of Java - David D. Riley

The Object of Java

Introduction to Programming Using Software Engineering Principles

David D. Riley (Autor)

Media-Kombination
880 Seiten
2005 | 2nd edition
Pearson
978-0-321-33158-8 (ISBN)
86,60 inkl. MwSt
  • Titel ist leider vergriffen;
    keine Neuauflage
  • Artikel merken
The Object of Java takes an "objects-centric" approach to problem solving and programming using Java. This new edition takes full advantage of the new features of Java 5.0, and has replaced the use of the aLibrary package with increased emphasis on awt and swing. 

 

This book takes an objects first approach, and also focuses on the skills and discipline of software engineering that are needed for good programming.  Since specifications are critical for conveying code behavior in the object-oriented model, discussions of method preconditions and postconditions, and class invariants are used consistently to document examples and to define example classes.  It also uses the notion of patterns to identify numerous expressions, instructions, algorithms and designs that serve to pattern program segments.

 

Contents Preface

Preface for the Student

Chapter 1 - Objects and Classes

1.1 Objects Everywhere

1.2 Objects in Software

1.3 Anatomy of a Software Class

1.4 The Difference between Objects and Classes

1.5 Edit, Compile, and Run

1.6 Introduction to Software Engineering

1.7 A Sample of Object-Oriented Software Development

 

Chapter 2 - Introduction to Java Objects

2.1 Syntax Diagrams

2.2 The Method Call

2.3 Instruction Sequences

2.4 Constructing and Assigning Objects

2.5 Coding Patterns and Swapping

2.6 Putting It Together in a Java Class

2.7 Programming by Contract

2.8 Comments

2.9 Observing Execution

2.10 Refining Algorithms–Divide and Conquer

2.11 Selecting Identifiers

2.12 A Second Example of Refinement

2.13 Calling Methods with Parameters

 

Chapter 3 - Introduction to Design and Implementation

3.1 Introduction to Standard Classes

3.2 Import Declarations

3.3 javax.swing.JFrame

3.4 java.awt.Label

3.5 Nonstandard Classes (Rectangle, Oval, and Line)

3.6 Prototyping

3.7 Debugging: Commenting Out Code and Using System.out.println

 

Chapter 4 - Methods

4.1 The Need for a Subprogram

4.2 Private Parameterless Methods

4.3 Using Parameters

4.4 Local Variables

4.5 Non-Void Methods

4.6 Standard Non-Void Methods

4.7 Introduction to Event Handling

4.8 Postcondition Notation

4.9 java.awt.Container–A Design Example

 

Chapter 5 - Primitive Data

5.1 Primitive Types

5.2 Primitive Integer Data Types

5.3 Differences between Primitives and References

5.4 Real Numbers (float and double Types)

5.5 System.out.println Revisited

5.6 Mixed Type Numeric Expressions

5.7 Primitive Methods (Including Math)

5.8 Constants (final)

5.9 Numeric Expression Patterns

5.10 char Data Type

5.11 Design Example–Dynamic Histogram

 

Chapter 6 - Supplier Classes

6.1 Clients and Suppliers in Software

6.2 Another Client

6.3 Suppliers

6.4 Scope and Lifetime

6.5 Class Interface Design Principles

6.6 Separating Read and Write Access

6.7 Method Overloading

6.8 this

6.9 Enumerated Data Types

6.10 String

6.11 JTextField (Optional)

 

Chapter 7 - Logic and Selection

7.1 The if instruction

7.2 Relational Expressions

7.3 Boolean Expressions

7.4 Conditional Evaluation

7.5 Predicates

7.6 The Use of implies

7.7 Nesting if Instructions

7.8 Multiway Selection

7.9 The switch Instruction

7.10 Software Testing

7.11 Logic and Programming (Optional)

7.12 Assertions Revisited

 

Chapter 8 - Inheritance

8.1 Extends

8.2 Class Relations: contains_a and is_a

8.3 Specialization and Extension–javax.swing.JComponent

8.4 Protected Scope

8.5 Inheriting for Event Handling

8.6 Animating by Inheriting EventTimer (Optional)

8.7 Design Example with Sliders and Text Fields (Optional)

8.8 Summary

 

Chapter 9 - Polymorphism

9.1 Inheritance Hierarchies

9.2 Type Conformance

9.3 Subtype Polymorphism

9.4 Abstract Classes

9.5 The Object Class

9.6 Equality by Content and by Identity

9.7 Using Interfaces

 

Chapter 10 - Repetition

10.1 The while Loop

10.2 Counting Loops

10.3 Sentinel Loops

10.4 Loop Design Cautions

10.5 Nested Loops

10.6 The do Loop

10.7 The for Loop

10.8 Loop Invariants

10.9 Looping and Event Handling

10.10 Testing and Loops

 

Chapter 11 - Containers

11.1 Containers

11.2 Generic Containers

11.3 Wrapper Classes and Autoboxing/Unboxing

11.4 Lists

11.5 List Traversal

11.6 Linear Searching

11.7 Sorting by Insertion

11.8 Generic Sorting (Optional)

 

Chapter 12 - Introduction to Arrays

12.1 One-Dimensional Arrays

12.2 Keeping Indices in Bounds

12.3 Sequential Processing with for Loops

12.4 Treating Arrays in Aggregate

12.5 Tables

12.6 Arrays with Reference Items

12.7 Arrays and Objects

12.8 Sorting–the Selection Sort

12.9 Two-Dimensional Arrays

 

Chapter 13 - File Input and Output

13.1 Files

13.2 The Java File Class

13.3 I/O Exceptions

13.4 Input and Output

13.5 DataInputStream and DataOutputStream

13.6 Text Files

13.7 Terminal-Style I/O (Optional)

13.8 Persistent Objects (Optional)

13.9 JFileChooser (Optional)

 

Chapter 14 - Recursion

14.1 Recursive Definition

14.2 From Recursive Definition to Method

14.3 Recursive Methods

14.4 Recursive Execution

14.5 Recursion and Repetition

14.6 More Complicated Forms of Recursion

 

Chapter 15 - Applications and Applets

15.1 static Variables

15.2 static Methods

15.3 Applications

15.4 Applets

15.5 Creating Packages (Optional)

15.6 Using Packages

 

Appendix A Introduction to Computing Systems

Appendix B Java Syntax Diagrams

Appendix C Precedence of Java Operations

Appendix D Library Software

Appendix E UML Notation

Appendix F Programming Using Windows

 

Index

Erscheint lt. Verlag 7.10.2005
Sprache englisch
Gewicht 1204 g
Themenwelt Informatik Programmiersprachen / -werkzeuge Java
Mathematik / Informatik Informatik Web / Internet
ISBN-10 0-321-33158-3 / 0321331583
ISBN-13 978-0-321-33158-8 / 9780321331588
Zustand Neuware
Haben Sie eine Frage zum Produkt?
Mehr entdecken
aus dem Bereich