: Jacquie Barker
: Beginning Java Objects From Concepts to Code
: Apress
: 9781430200369
: 2
: CHF 48.60
:
: Informatik
: English
: 1000
: Wasserzeichen/DRM
: PC/MAC/eReader/Tablet
: PDF

Ex ort author Barker covers information key for proficiency with an OO programming language like Java, and shows how to really create reusable code and extensible applications.



A bio is not available for this author.
Contents7
About the Author22
About the Technical Reviewer23
Acknowledgments24
Preface25
Introduction26
Part 1 The ABCs of Objects37
Chapter 1 Abstraction and Modeling38
Simplification Through Abstraction38
Generalization Through Abstraction39
Reuse of Abstractions44
Inherent Challenges45
Summary47
Chapter 2 Some Java Basics50
Why Java?50
Anatomy of a Simple Java Program59
The Mechanics of Java63
Primitive Types67
Variables68
Variable Initialization70
The String Type71
Case Sensitivity72
Java Expressions73
Automatic Type Conversions and Explicit Casting77
Loops and Other Flow-Control Structures79
Block-Structured Languages and the Scope of a Variable88
Printing to the Screen89
Elements of Java Style93
Summary98
Chapter 3 Objects and Classes100
Software at Its Simplest100
What Is an Object?103
What Is a Class?106
Instantiation109
Encapsulation110
User-Defined Types and Reference Variables111
Instantiating Objects: A Closer Look112
Objects As Attributes120
Three Distinguishing Features of an Object- Oriented Programming Language127
Summary127
Chapter 4 Object Interactions129
Events Drive Object Collaboration129
Declaring Methods131
Methods Implement Business Rules141
Objects As the Context for Method Invocation142
Method Overloading149
Message Passing Between Objects150
Delegation152
Obtaining Handles on Objects153
Objects As Clients and Suppliers156
Information Hiding/Accessibility158
Public Accessibility159
Accessing Private Features from Client Code166
The Power of Encapsulation Plus InformationHiding172
Exceptions to the Public/Private Rule181
Constructors184
Software at Its Simplest, Revisited195
Summary197
Chapter 5 Relationships Between Objects200
Associations and Links200
Aggregation and Composition206
Inheritance207
Three Distinguishing Features of an OOPL, Revisited242
Summary242
Chapter 6 Collections of Objects246
What Are Collections?246
Three Generic Types of Collection249
Arrays As Simple Collections252
A More Sophisticated Type of Collection: The ArrayList Class260
The HashMap Collection Class273
The TreeMap Class279
The Same Object Can Be Simultaneously Referenced by Multiple Collections281
Inventing Our Own Collection Types282
Collections As Method Return Types292
Collections of Derived Types293
Revisiting Our Student Class Design294
Summary303
Chapter 7 Some Final Object Concepts305
Polymorphism306
Abstract Classes314
Interfaces322
Static Features345
Summary359
Part 2 Object Modeling 101362
Chapter 8 The Object Modeling Process in a Nutshell363
The Big Picture Goal of Object Modeling363
Jacquie s Recommended Object Modeling Process,in a Nutshell367
Summary371
Chapter 9 Formalizing Requirements Through Use Cases372
What Are Use Cases?373
Actors375
Specifying Use Cases379
Matching Up Use Cases with Actors380
To Diagram or Not to Diagram?380
Summary382
Chapter 10 Modeling the Static/Data Aspects of the System383
Identifying Appropriate Classes384
Producing a Data Dictionary395
Determining Associations Between Classes396
Identifying Attributes400
UML Notation: Modeling the Static Aspects of an Abstraction400
Object Diagrams414
Associations As Attributes416
Information Flows Along an Association Pipeline 417
Mixing and Matching Relationship Notations423
Association Classes425
Our Completed Student Registration System Class Diagram428
Metadata434
Summary435
Chapter 11 Modeling the Dynamic/Behavioral Aspects of the System437
How Behavior Affects State438
Scenarios443
Sequence Diagrams447
Using Sequence Diagrams to Determine Methods452
Communication Diagrams454
Revised SRS Class Diagram456
Summary457
Chapter 12 Wrapping Up Our Modeling Efforts459
Testing the Model459
Revisiting Requirements460
Reusing Models: A Word About Design Patterns462
Summary465
Part 3 Translating an Object Blueprint into Java Code467
Chapter 13 Rounding Out Your Java Knowledge468
Java-Specific Terminology468
Java Application Architecture471
Java Archive (JAR) Files473
Javadoc Comments477
The Object Nature of Strings484
Message Chains497
Object Self-Referencing with this 499
Java Exception Handling500
Enum(eration)s528
Providing Input to Command Line Driven Programs536
Features of the Object Class549
A Deeper Look Behind the Scenes of the JVM559
The Date Class568
Accessibility, Revisited574
Variable Initialization, Revisited579
Inner Classes581
Additional J2SE 5.0 Enhancements584
Summary591
Chapter 14 Transforming Your Model into Java Code594
Suggestions for Getting the Maximum Value from Thi