- ホーム
- > 洋書
- > 英文書
- > Computer / Languages
Full Description
NOTEthe 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 PearsonIf 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.
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