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.

9780133796285

Java Software Solutions plus MyProgrammingLab with Pearson eText -- Access Card Package

by ;
  • ISBN13:

    9780133796285

  • ISBN10:

    0133796280

  • Edition: 8th
  • Format: Package
  • Copyright: 2014-03-07
  • Publisher: Pearson
  • View Upgraded Edition

Note: Supplemental materials are not guaranteed with Rental or Used book purchases.

Purchase Benefits

List Price: $167.33 Save up to $46.85
  • Buy Used
    $120.48
    Add to Cart Free Shipping Icon Free Shipping

    IN STOCK USUALLY SHIPS IN 24 HOURS.

Supplemental Materials

What is included with this book?

Summary

NOTE: Before purchasing, check with your instructor to ensure you select the correct ISBN. Several versions of Pearson's MyLab & Mastering products exist for each title, and registrations are not transferable. To register for and use Pearson's MyLab & Mastering products, you may also need a Course ID, which your instructor will provide.

Used books, rentals, and purchases made outside of Pearson
If purchasing or renting from companies other than Pearson, the access codes for Pearson's MyLab & Mastering products may not be included, may be incorrect, or may be previously redeemed. Check with the seller before completing your purchase.

Java Software Solutions is intended for use in the Java programming course. It is also suitable for  readers interested in introductory Java programming.

 

Java Software Solutions teaches a foundation of programming techniques to foster well-designed object-oriented software. Heralded for its integration of small and large realistic examples, this worldwide best-selling text emphasizes building solid problem-solving and design skills to write high-quality programs.

 

MyProgrammingLab for Java Software Solutions is a total learning package. MyProgrammingLab is an online homework, tutorial, and assessment program that truly engages students in learning. It helps students better prepare for class, quizzes, and exams–resulting in better performance in the course–and provides educators a dynamic set of tools for gauging individual and class progress.

 

Teaching and Learning Experience

To provide a better teaching and learning experience, for both instructors and students, this program will:

  • Personalize Learning: Through the power of practice and immediate personalized feedback, MyProgrammingLab helps students fully grasp the logic, semantics, and syntax of programming.
  • Help Students Build Sound Program-Development Skills: A software methodology is introduced early and revisited throughout the text to ensure that students build sound program-development skills.  
  • Enhance Learning with In-text Features: A variety of features in each chapter help motivate learning.
  • Provide Opportunities to Practice Design Skills and Implement Java Programs:  A wealth of end-of-chapter programming projects and chapter review features help reinforce key concepts.
  • Support Instructors and Students: Resources to support learning are available on the Companion website and Instructor Resource Center.

Note: Java Software Solutions with MyProgrammingLab Access Card Package, 8/e contains:

  • ISBN-10: 0133594955/ISBN-13: 9780133594959  Java Software Solutions , 8/e
  • ISBN-10: 0133781283/ISBN-13: 9780133781281 MyProgrammingLab with Pearson eText -- Access Card -- for Java Software Solutions , 8/e
MyProgrammingLab is not a self-paced technology and should only be purchased when required by an instructor.

Author Biography

John Lewis is the co-author of the previous editions of the Java Software Solutions textbook, Java Software Structures, Java Foundations, and the Java Software Solutions textbook used for AP computer science classes.

Table of Contents

preface v
chapter 1 Introduction 1
1.1 computer processing 2
Software Categories  3
Digital Computers  5
Binary Numbers  7
1.2 Hardware components 10
Computer Architecture  11
Input/Output Devices  12
Main Memory and Secondary Memory  13
The Central Processing Unit  17
1.3 Networks 20
Network Connections  20
Local-Area Networks and  
Wide-Area Networks  22
The Internet  23
The World Wide Web  24
Uniform Resource Locators  25
1.4 The Java programming Language 26
A Java Program  28
Comments  30
Identifiers and Reserved Words  31
White Space  34
1.5 program Development 36
Programming Language Levels  36
Editors, Compilers, and Interpreters  39
Development Environments  40
Syntax and Semantics  41
Errors  42
1.6 Object-Oriented programming 44
Problem Solving  45
Object-Oriented Software Principles  46
chapter 2 Data and Expressions 57
2.1 character Strings 58
The print and println Methods  58
String Concatenation  60
Escape Sequences  63
2.2 Variables and assignment 65
Variables  65
The Assignment Statement  67
Constants  69
2.3 primitive Data Types 71
Integers and Floating Points  71
Characters  73
Booleans  74
2.4 Expressions 75
Arithmetic Operators  75
Operator Precedence  76
Increment and Decrement Operators  80
Assignment Operators  81
2.5 Data conversion 83
Conversion Techniques  85
2.6 Interactive programs 87
The Scanner Class  87
2.7 Graphics 92
Coordinate Systems  92
Representing Color  94
2.8 applets 95
Executing Applets Using the Web  98
2.9 Drawing Shapes 99
The Graphics Class  99
Software failure:
NASA Mars Climate Orbiter  
and Polar Lander  111
chapter 3 Using classes and Objects 113
3.1 creating Objects 114
Aliases  116
3.2 The String class 118
3.3 packages 122
The import Declaration  124
3.4 The Random class 126
3.5 The Math class 129
3.6 formatting Output 132
The NumberFormat Class  132
The DecimalFormat Class  134
The printf Method  135
3.7 Enumerated Types 138
3.8 Wrapper classes 141
Autoboxing  143
3.9 components and containers 143
Frames and Panels  144
3.10 Nested panels 148
3.11 Images 151
chapter 4 Writing classes 159
4.1 classes and Objects revisited 160
4.2 anatomy of a class 162
Instance Data  167
UML Class Diagrams  167
4.3 Encapsulation 169
Visibility Modifiers  170
Accessors and Mutators  171
4.4 anatomy of a Method 172
The return Statement  174
Parameters  175
Local Data  175
Bank Account Example  176
4.5 constructors revisited 181
4.6 Graphical Objects 182
4.7 Graphical User Interfaces 191
4.8 Buttons 192
4.9 Text fields 196
Software failure:
Denver Airport Baggage  
Handling System  205
chapter 5 conditionals and Loops 207
5.1 Boolean Expressions 208
Equality and Relational Operators  209
Logical Operators  210
5.2 The if Statement 213
The if-else Statement  216
Using Block Statements  219
Nested if Statements  223
5.3 comparing Data 226
Comparing Floats  226
Comparing Characters  227
Comparing Objects  228
5.4 The while Statement 230
Infinite Loops  234
Nested Loops  236
The break and continue Statements  239
5.5 Iterators 241
Reading Text Files  242
5.6 The arrayList class 245
5.7 Determining Event Sources 248
5.8 check Boxes and radio Buttons 251
Check Boxes  251
Radio Buttons  255
Software failure:
Therac-25  267
chapter 6 More conditionals and Loops 269
6.1 The switch Statement 270
6.2 The conditional Operator 274
6.3 The do Statement 275
6.4 The for Statement 279
The for-each Loop  282
Comparing Loops  284
6.5 Drawing with Loops and conditionals 285
6.6 Dialog Boxes 291
chapter 7 Object-Oriented Design 301
7.1 Software Development activities 302
7.2 Identifying classes and Objects 303
Assigning Responsibilities  305
7.3 Static class Members 305
Static Variables  306
Static Methods  306
7.4 class relationships 310
Dependency  310
Dependencies Among Objects  
of the Same Class  310
Aggregation  316
The this Reference  320
7.5 Interfaces 322
The Comparable Interface  327
The Iterator Interface  328
7.6 Enumerated Types revisited 329
7.7 Method Design 332
Method Decomposition  333
Method Parameters Revisited  338
7.8 Method Overloading 343
7.9 Testing 345
Reviews  346
Defect Testing  346
7.10 GUI Design 349
7.11 Layout Managers 350
Flow Layout  352
Border Layout  356
Grid Layout  359
Box Layout  361
7.12 Borders 365
7.13 containment Hierarchies 369
Software failure:
2003 Northeast Blackout  377
chapter 8 arrays 379
8.1 array Elements 380
8.2 Declaring and Using arrays 381
Bounds Checking  384
Alternate Array Syntax  389
Initializer Lists  389
Arrays as Parameters  390
8.3 arrays of Objects 392
8.4 command-Line arguments 402
8.5 Variable Length parameter Lists 404
8.6 Two-Dimensional arrays 408
Multidimensional Arrays  412
8.7 polygons and polylines 413
The Polygon Class  416
8.8 Mouse Events 418
8.9 Key Events 427
Software failure:
LA Air Traffic Control  441
chapter 9 Inheritance 443
9.1 creating Subclasses 444
The protected Modifier  447
The super Reference  450
Multiple Inheritance  453
9.2 Overriding Methods 455
Shadowing Variables  457
9.3 class Hierarchies 458
The Object Class  460
Abstract Classes  461
Interface Hierarchies  463
9.4 Visibility 463
9.5 Designing for Inheritance 466
Restricting Inheritance  467
9.6 The component class Hierarchy 468
9.7 Extending adapter classes 471
9.8 The Timer class 475
Software failure:
Ariane 5 Flight 501  485
chapter 10 polymorphism 487
10.1 Late Binding 488
10.2 polymorphism via Inheritance 489
10.3 polymorphism via Interfaces 502
10.4 Sorting 504
Selection Sort  505
Insertion Sort  511
Comparing Sorts  512
10.5 Searching 513
Linear Search  513
Binary Search  515
Comparing Searches  519
10.6 Designing for polymorphism 519
10.7 Event processing 521
10.8 file choosers 522
10.9 color choosers 525
10.10 Sliders 527
chapter 11 Exceptions 537
11.1 Exception Handling 538
11.2 Uncaught Exceptions 539
11.3 The try-catch Statement 540
The finally Clause  544
11.4 Exception propagation 545
11.5 The Exception class Hierarchy 549
Checked and Unchecked Exceptions  552
11.6 I/O Exceptions 553
11.7 Tool Tips and Mnemonics 557
11.8 combo Boxes 564
11.9 Scroll panes 569
11.10 Split panes 572
chapter 12 recursion 583
12.1 recursive Thinking 584
Infinite Recursion  584
Recursion in Math  585
12.2 recursive programming 586
Recursion vs. Iteration  589
Direct vs. Indirect Recursion  589
12.3 Using recursion 590
Traversing a Maze  591
The Towers of Hanoi  596
12.4 recursion in Graphics 601
Tiled Pictures  601
Fractals  604
chapter 13 collections 617
13.1 collections and Data Structures 618
Separating Interface from Implementation  618
13.2 Dynamic representations 619
Dynamic Structures  619
A Dynamically Linked List  620
Other Dynamic List Representations  625
13.3 Linear Data Structures 627
Queues  627
Stacks  628
13.4 Non-Linear Data Structures 631
Trees  631
Graphs  632
13.5 The Java collections apI 634
Generics  634
appendix a Glossary 641
appendix B Number Systems 665
appendix c The Unicode character Set 673
appendix D Java Operators 677
appendix E Java Modifiers 683
appendix f Java coding Guidelines 687
appendix G Java applets 693
appendix H regular Expressions 695
appendix I Javadoc Documentation Generator 697
appendix J The paintBox project 703
appendix K GUI Events 715
appendix L Java Syntax 719
appendix M The Java class Library 733
appendix N answers to Self-review Questions 735
Index 789
VideoNote
Overview of program elements. 29
comparison of Java IDEs. 41
Examples of various error types. 43
Developing a solution for pp 1.2. 54
Example using strings and escape sequences. 63
review of primitive data and expressions. 76
Example using the Scanner class. 91
Example using drawn shapes. 101
Developing a solution of pp 2.10. 109
creating objects. 115
Example using the Random and Math classes. 129
Example using frames and panels. 150
Developing a solution of pp 3.6. 158
Dissecting the Die class. 164
Discussion of the Account class. 178
Example using an extended JPanel. 182
Overview of GUI development. 191
Developing a solution of pp 4.2. 202
Examples using conditionals. 221
Examples using while loops. 233
Examples using check boxes and radio buttons. 255
Developing a solution of pp 5.4. 264
Examples using for loops. 280
Developing a solution of pp 6.2 296
Exploring the static modifier. 305
Examples of method overloading. 344
Discussion of layout managers. 356
Developing a solution of pp 7.1. 374
Overview of arrays. 383
Discussion of the LetterCount example. 388
Example using rubberbanding and arrays. 423
Developing a solution of pp 8.5. 436
Overview of inheritance. 449
Example using a class hierarchy. 461
Example using the Timer class. 475
Developing a solution of pp 9.11. 483
Exploring the firm program. 490
Sorting Comparable objects. 506
Developing a solution of pp 10.1. 534
proper exception handling. 545
Exploring GUI design details. 561
Developing a solution of pp 11.1. 580
Tracing the MazeSearch program. 594
Exploring the Towers of Hanoi. 597
Developing a solution of pp 12.1. 613
Example using a linked list. 620
Implementing a queue. 628
Developing a solution of pp 13.3. 638

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