Warehouse Stock Clearance Sale

Grab a bargain today!


Big Java: Late Objects
By

Rating

Product Description
Product Details

Table of Contents

Preface v
Special Features xxvi


Chapter 1 INTRODUCTION 1


1.1 Computer Programs 2


1.2 The Anatomy of a Computer 3


1.3 The Java Programming Language 5


1.4 Becoming Familiar with Your Programming Environment
8


1.5 Analyzing Your First Program 12


1.6 Errors 15


1.7 Problem Solving: Algorithm Design 16


Chapter 2 FUNDAMENTAL DATA TYPES 29


2.1 Variables 30


2.2 Arithmetic 41


2.3 Input and Output 48


2.4 Problem Solving: First Do It By Hand 57


2.5 Strings 59


Chapter 3 DECISIONS 81


3.1 The if Statement 82


3.2 Comparing Numbers and Strings 88


3.3 Multiple Alternatives 96


3.4 Nested Branches 100


3.5 Problem Solving: Flowcharts 105


3.6 Problem Solving: Test Cases 108


3.7 Boolean Variables and Operators 111


3.8 Application: Input Validation 116


Chapter 4 LOOPS 139


4.1 The while Loop 140


4.2 Problem Solving: Hand-Tracing 147


4.3 The for Loop 150


4.4 The do Loop 156


4.5 Application: Processing Sentinel Values 158


4.6 Problem Solving: Storyboards 162


4.7 Common Loop algorithms 165


4.8 Nested Loops 172


4.9 Application: Random Numbers and Simulations 176


Chapter 5 METHODS 201


5.1 Methods as Black Boxes 202


5.2 Implementing Methods 204


5.3 Parameter Passing 207


5.4 Return Values 210


5.5 Methods Without Return Values 214


5.6 Problem Solving: Reusable Methods 215


5.7 Problem Solving: Stepwise Refinement 218


5.8 Variable Scope 225


5.9 Recursive Methods (Optional) 228


Chapter 6 ARRAYS AND ARRAY LISTS 249


6.1 Arrays 250


6.2 The Enhanced for Loop 257


6.3 Common Array Algorithms 258


6.4 Using Arrays with Methods 268


6.5 Problem Solving: Adapting Algorithms 272


6.6 Problem Solving: Discovering Algorithms by Manipulating
Physical Objects 279


6.7 Two-Dimensional Arrays 282


6.8 Array Lists 289


Chapter 7 INPUT/OUTPUT AND EXCEPTION HANDLING 317


7.1 Reading and Writing Text files 318


7.2 Text Input and Output 323


7.3 Command Line Arguments 330


7.4 Exception Handling 337


7.5 Application: Handling Input Errors 347


Chapter 8 OBJECTS AND CLASSES 361


8.1 Object-Oriented Programming 362


8.2 Implementing a Simple Class 364


8.3 Specifying the Public Interface of a Class 367


8.4 Designing the Data representation 371


8.5 Implementing Instance Methods 372


8.6 Constructors 375


8.7 Testing a Class 380


8.8 Problem Solving: Tracing Objects 386


8.9 Problem Solving: Patterns for Object Data 388


8.10 Object References 395


8.11 Static Variables and Methods 400


Chapter 9 INHERITANCE AND INTERFACES 415


9.1 Inheritance Hierarchies 416


9.2 Implementing Subclasses 420


9.3 Overriding Methods 424


9.4 Polymorphism 430


9.5 Object: The Cosmic Superclass 441


9.6 Interface Types 448


Chapter 10 GRAPHICAL USER INTERFACES 465


10.1 Frame Windows 466


10.2 Events and Event Handling 470


10.3 Processing Text Input 481


10.4 Creating Drawings 487


Chapter 11 ADVANCED USER INTERFACES 507


11.1 Layout Management 508


11.2 Choices 510


11.3 Menus 521


11.4 Exploring the Swing Documentation 528


11.5 Using Timer events for Animations 533


11.6 Mouse Events 536


Chapter 12 OBJECT-ORIENTED DESIGN 549


12.1 Classes and Their Responsibilities 550


12.2 Relationships Between Classes 554


12.3 Application: Printing an Invoice 562


12.4 Packages 574


Chapter 13 RECURSION 585


13.1 Triangle Numbers Revisited 586


13.2 Problem Solving: Thinking Recursively 590


13.3 Recursive Helper Methods 594


13.4 The Efficiency of Recursion 596


13.5 Permutations 601


13.6 Mutual Recursion 606


13.7 Backtracking 612


Chapter 14 SORTING AND SEARCHING 627


14.1 Selection Sort 628


14.2 Profiling the Selection Sort Algorithm 631


14.3 Analyzing the Performance of the Selection Sort Algorithm
634


14.4 Merge Sort 639


14.5 Analyzing the Merge Sort Algorithm 642


14.6 Searching 646


14.7 Problem Solving: Estimating the Running Time of an
Algorithm 651


14.8 Sorting and Searching in the Java Library 656


Chapter 15 THE JAVA COLLECTIONS FRAMEWORK 669


15.1 An Overview of the Collections Framework 670


15.2 Linked Lists 672


15.3 Sets 679


15.4 Maps 684


15.5 Stacks, Queues, and Priority Queues 690


15.6 Stack and Queue Applications 693


Chapter 16 BASIC DATA STRUCTURES 713


16.1 Implementing Linked Lists 714


16.2 Implementing Array Lists 728


16.3 Implementing Stacks and Queues 733


16.4 Implementing a Hash Table 739


Chapter 17 TREE STRUCTURES 759


17.1 Basic Tree Concepts 760


17.2 Binary Trees 764


17.3 Binary Search Trees 769


17.4 Tree Traversal 778


17.5 Red-Black Trees 784


17.6 Heaps 791


17.7 The Heapsort Algorithm 802


Chapter 18 GENERIC CLASSES 817


18.1 Generic Classes and Type Parameters 818


18.2 Implementing Generic Types 819


18.3 Generic Methods 823


18.4 Constraining Type Parameters 825


18.5 Type Erasure 829


Chapter 18 STREAMS AND BINARY INPUT/OUTPUT 839


19.1 Readers, Writers, and Streams 840


19.2 Binary Input and Output 841


19.3 Random Access 845


19.4 Object Streams 851


Chapter 20 MULTITHREADING (WEB ONLY)


20.1 Running Threads


20.2 Terminating Threads


20.3 Race Conditions


20.4 Synchronizing Object Access


20.5 Avoiding Deadlocks


20.6 Application: Algorithm Animation


Chapter 21 INTERNET NETWORKING (WEB ONLY)


21.1 The Internet Protocol


21.2 Application Level Protocols


21.3 A Client Program


21.4 A Server Program


21.5 URL Connections


Chapter 22 RELATIONAL DATABASES (WEB ONLY)


22.1 Organizing Database Information


22.2 Queries


22.3 Installing a Database


22.4 Database Programming in Java


22.5 Application: Entering an Invoice


Chapter 23 XML (WEB ONLY)


23.1 XML Tags and Documents


23.2 Parsing XML Documents


23.3 Creating XML Documents


23.4 Validating XML Documents


Chapter 24 WEB APPLICATIONS (WEB ONLY)


24.1 The Architecture of a Web Application


24.2 The Architecture of a JSF Application


24.3 Javabeans Components


24.4 Navigation Between Pages


24.5 JSF Components


24.6 A Three-Tier Application


APPENDICES


APPENDIX A THE BASIC LATIN AND LATIN-1 SUBSETS OF UNICODE
861


APPENDIX B JAVA OPERATOR SUMMARY 865


APPENDIX C JAVA RESERVED WORD SUMMARY 867


APPENDIX D THE JAVA LIBRARY 869


APPENDIX E JAVA SYNTAX SUMMARY 913


APPENDIX F HTML SUMMARY 925


APPENDIX G TOOL SUMMARY 931


APPENDIX H JAVADOC SUMMARY 933


APPENDIX I NUMBER SYSTEMS 935


APPENDIX J BIT AND SHIFT OPERATIONS 941


APPENDIX K UML SUMMARY 943


APPENDIX L JAVA LANGUAGE CODING GUIDELINES 947


GLOSSARY 955


INDEX 969


CREDITS 1011

About the Author

Cay S. Horstmann is a Professor of Computer Science in the Department of Computer Science at San Jose State University. He is an experienced professional programmer and was Vice President and Chief Technology Officer for Preview Systems, Inc. He is also a consultant for major corporations, universities, and organizations on Java, C++, Windows, and Internet programming. Horstmann is the author of many successful professional and academic books, including Big C++, C++ for Everyone, Big Java, and Big Java: Late Objects—all with John Wiley & Sons, Inc.

Ask a Question About this Product More...
 
Look for similar items by category
This title is unavailable for purchase as none of our regular suppliers have stock available. If you are the publisher, author or distributor for this item, please visit this link.

Back to top
We use essential and some optional cookies to provide you the best shopping experience. Visit our cookies policy page for more information.