did-you-know? rent-now

Amazon no longer offers textbook rentals. We do!

did-you-know? rent-now

Amazon no longer offers textbook rentals. We do!

We're the #1 textbook rental company. Let us show you why.

9780073523392

A Comprehensive Introduction to Object-Oriented Programming with Java

by
  • ISBN13:

    9780073523392

  • ISBN10:

    0073523399

  • Format: Nonspecific Binding
  • Copyright: 2007-02-13
  • Publisher: McGraw-Hill Higher Education
  • Purchase Benefits
  • Free Shipping Icon Free Shipping On Orders Over $35!
    Your order must be $35 or more to qualify for free economy shipping. Bulk sales, PO's, Marketplace items, eBooks and apparel do not qualify for this offer.
  • eCampus.com Logo Get Rewarded for Ordering Your Textbooks! Enroll Now
List Price: $128.13

Summary

This expanded version of the author's highly regarded Introduction to Object-Oriented Programming with Java is an accessible and technically thorough introduction to programming using Java. As in previous editions, the author takes what he calls an "objects-first" approach to object-oriented programming. Proper design practice is emphasized throughout, with students learning first to be object users and then to be class designers. Beginning students will benefit from the emphasis on step-by-step program design and the author's hallmark visual approach, while students of all levels will appreciate the book's problem-solving orientation and numerous sample development programs. Java 5.0 features are incorporated throughout the book and include full coverage of the scanner class for input, the formatter class, and generics.

Table of Contents

Prefacep. xiii
Key Differences from the Standard Editionp. xiii
Book Organizationp. xiv
Hallmark Features of the Textp. xviii
Introduction to Computers and Programming Languagesp. 1
A History of Computersp. 2
Computer Architecturep. 4
Programming Languagesp. 11
Javap. 12
Introduction to Object-Oriented Programming and Software Developmentp. 15
Classes and Objectsp. 16
Messages and Methodsp. 18
Class and Instance Data Valuesp. 20
Inheritancep. 23
Software Engineering and Software Life Cyclep. 24
Getting Started with Javap. 29
The First Java Programp. 30
Program Componentsp. 39
Edit-Compile-Run Cyclep. 49
Sample Java Standard Classesp. 52
Sample Developmentp. 67
Numerical Datap. 81
Variablesp. 82
Arithmetic Expressionsp. 90
Constantsp. 95
Displaying Numerical Valuesp. 97
Getting Numerical Inputp. 103
The Math Classp. 109
Random Number Generationp. 113
The GregorianCalendar Classp. 115
Sample Developmentp. 120
Numerical Representation (Optional)p. 131
Defining Your Own Classes-Part 1p. 145
First Example: Defining and Using a Classp. 146
Second Example: Defining and Using Multiple Classesp. 156
Matching Arguments and Parametersp. 160
Passing Objects to a Methodp. 162
Constructorsp. 167
Information Hiding and Visibility Modifiersp. 172
Class Constantsp. 175
Local Variablesp. 183
Calling Methods of the Same Classp. 185
Changing Any Class to a Main Classp. 189
Sample Developmentp. 190
Selection Statementsp. 213
The if Statementp. 214
Nested if Statementsp. 225
Boolean Expressions and Variablesp. 231
Comparing Objectsp. 239
The switch Statementp. 244
Drawing Graphicsp. 248
Enumerated Constantsp. 258
Sample Developmentp. 264
Repetition Statementsp. 295
The while Statementp. 296
Pitfalls in Writing Repetition Statementsp. 305
The do-while Statementp. 311
Loop-and-a-Half Repetition Controlp. 315
The for Statementp. 319
Nested for Statementsp. 324
Formatting Outputp. 326
Loan Tablesp. 331
Estimating the Execution Timep. 334
Recursive Methods (Optional)p. 338
Sample Developmentp. 343
Defining Your Own Classes-Part 2p. 365
Returning an Object from a Methodp. 366
The Reserved Word thisp. 370
Overloaded Methods and Constructorsp. 378
Class Variables and Methodsp. 383
Call-by-Value Parameter Passingp. 387
Organizing Classes into a Packagep. 394
Using Javadoc Comments for Class Documentationp. 395
The Complete Fraction Classp. 400
Sample Developmentp. 410
Exceptions and Assertionsp. 437
Catching Exceptionsp. 438
Throwing Exceptions and Multiple catch Blocksp. 445
Propagating Exceptionsp. 450
Types of Exceptionsp. 458
Programmer-Defined Exceptionsp. 461
Assertionsp. 463
Sample Developmentp. 469
Characters and Stringsp. 487
Charactersp. 488
Stringsp. 491
Pattern Matching and Regular Expressionp. 502
The Pattern and Matcher Classesp. 509
Comparing Stringsp. 513
StringBuffer and StringBuilderp. 515
Sample Developmentp. 521
Arrays and Collectionsp. 543
Array Basicsp. 544
Arrays of Objectsp. 555
The For-Each Loopp. 565
Passing Arrays to Methodsp. 569
Two-Dimensional Arraysp. 576
Lists and Mapsp. 583
Sample Developmentp. 596
Sorting and Searchingp. 619
Searchingp. 620
Sortingp. 624
Heapsortp. 632
Sample Developmentp. 645
File Input and Outputp. 669
File and JFileChooser Objectsp. 670
Low-Level File I/Op. 679
High-Level File I/Op. 684
Object I/Op. 693
Sample Developmentp. 700
Inheritance and Polymorphismp. 713
A Simple Examplep. 714
Defining Classes with Inheritancep. 717
Using Classes Effectively with Polymorphismp. 721
Inheritance and Member Accessibilityp. 724
Inheritance and Constructorsp. 729
Abstract Superclasses and Abstract Methodsp. 733
Inheritance versus Interfacep. 738
Sample Developmentp. 739
GUI and Event-Driven Programmingp. 765
Simple GUI I/O with JOptionPanep. 768
Customizing Frame Windowsp. 771
GUI Programming Basicsp. 777
Text-Related GUI Componentsp. 787
Layout Managersp. 798
Effective Use of Nested Panelsp. 808
Other GUI Componentsp. 817
Menusp. 835
Handling Mouse Eventsp. 839
Recursive Algorithmsp. 859
Basic Elements of Recursionp. 860
Directory Listingp. 861
Anagramp. 863
Towers of Hanoip. 866
Quicksortp. 868
When Not to Use Recursionp. 873
Memory Allocation Schemes and Linked Data Structuresp. 879
Contiguous Memory Allocation Schemep. 881
Noncontiguous Memory Allocation Schemep. 886
Manipulating Linked Listsp. 890
Linked Lists of Objectsp. 903
Sample Developmentp. 908
Generics and Type Safetyp. 945
Generic Classesp. 946
Generics and Collectionsp. 961
Generics, Inheritance, and Java Interfacep. 969
Additional Topics and Pitfallsp. 974
List ADTp. 981
The List ADTp. 982
The List Interfacep. 988
The Array Implementation of the List ADTp. 992
The Linked-List Implementation of the List ADTp. 1001
The Linked Implementation with the Head Nodep. 1018
The Iterator Design Patternp. 1022
Sample Developmentp. 1027
Stack ADTp. 1035
The Stack ADTp. 1036
The Stack Interfacep. 1040
The Array Implementationp. 1042
The Linked-List Implementationp. 1047
Implementation Using NPSListp. 1052
Sample Applications: Matching HTML Tagsp. 1053
Sample Applications: Solving a Maze with Backtrackingp. 1060
Queue ADTp. 1069
The Queue ADTp. 1070
The Queue Interfacep. 1073
The Array Implementationp. 1075
The Linked-List Implementationp. 1082
Implementation Using NPSListp. 1088
Priority Queuep. 1089
p. 1099
p. 1107
p. 1133
p. 1155
Indexp. 1163
Table of Contents provided by Ingram. All Rights Reserved.

Supplemental Materials

What is included with this book?

The New copy of this book will include any supplemental materials advertised. Please check the title of the book to determine if it should include any access cards, study guides, lab manuals, CDs, etc.

The Used, Rental and eBook copies of this book are not guaranteed to include any supplemental materials. Typically, only the book itself is included. This is true even if the title states it includes any access cards, study guides, lab manuals, CDs, etc.

Rewards Program