Lewis, John

Java software solutions : foundations of program design John Lewis, William Loftus - Boston : Pearson, 2017. - xxvii, 764 p. ill. ; 24 cm.

1. Introduction 1.1 Computer Processing 1.2 Hardware Components 1.3 Networks 1.4 The Java Programming Language 1.5 Programming Development 1.6 Object-Oriented Programming 2. Data and Expressions 2.1 Character Strings 2.2 Variables and Assignment 2.3 Primitive Data Types 2.4 Expressions 2.5 Data Conversion Software Failure: NASA Mars Climate Orbiter and Polar Lander 3. Using Classes and Objects 3.1 Creating Objects 3.2 The String Class 3.3 Packages 3.4 The Random Class 3.5 The Math Class 3.6 Formatting Output 3.7 Enumerated Types 3.8 Wrapper Classes 3.9 Introduction to JavaFX 3.10 Basic Shapes 3.11 Representing Colors 4. Writing Classes 4.1 Classes and Objects Revisited 4.2 Anatomy of a Class 4.3 Encapsulation 4.4 Anatomy of a Method 4.5 Constructors Revisited 4.6 Arcs 4.7 Images 4.8 Graphical User Interfaces 4.9 Text Fields Software Failure: Denver Airport Baggage Handling System 5. Conditionals and Loops 5.1 Boolean Expressions 5.2 The If Statement 5.3 Comparing Data 5.4 The While Statement 5.5 Iterators 5.6 The ArrayList Class 5.7 Determining Event Sources 5.8 Managing Fonts 5.9 Checkboxes 5.10 Radio Buttons Software Failure: Therac-25 6. More Conditionals and Loops 6.1 The Switch Statement 6.2 The Conditional Operator 6.3 The Do Statement 6.4 The For Statement 6.5 Using Loops and Conditionals with Graphics 6.6 Graphic Transformations 7. Object-Oriented Design 7.1 Software Development Activities 7.2 Identifying Classes and Objects 7.3. Static Class Members 7.4 Class Relationships 7.5 Interfaces 7.6 Enumerated Types Revisited 7.7 Method Design 7.8 Method Overloading 7.9 Testing 7.10 GUI Design 7.11 Key Events Software Failure: 2003 Northeast Blackout 8. Arrays 8.1 Array Elements 8.2 Declaring and Using Arrays 8.3 Arrays of Objects 8.4 Command-Line Arguments 8.5 Variable Length Parameter Lists 8.6 Two-Dimensional Arrays 8.7 Polygons and Polylines 8.8 An Array of Color Objects 8.9 Choice Boxes Software Failure: LA Air Traffic Control 9. Inheritance 9.1 Creating Subclasses 9.2 Overriding Methods 9.3 Class Hierarchies 9.4 Visibility 9.5 Designing for Inheritance 9.6 Inheritance in JavaFX 9.7 Color and Date Pickers 9.8 Dialog Boxes Software Failure: Ariane 5 Flight 501 10. Polymorphism 10.1 Late Binding 10.2 Polymorphism via Inheritance 10.3 Polymorphism vis Interfaces 10.4 Sorting 10.5 Searching 10.6 Designing for Polymorphism 10.7 Properties 10.8 Sliders 10.9 Spinners 11. Exceptions 11.1 Exception Handling 11.2 Uncaught Exceptions 11.3 The Try-Catch Statement 11.4 Exception Propagation 11.5 The Exception Class Hierarchy 11.6 I/O Exceptions 11.7 Tool Tips and Disabling Controls 11.8 Scroll Panes 11.9 Split Panes and List Views 12. Recursion 12.1 Recursive Thinking 12.2 Recursive Programming 12.3 Using Recursion 12.4 Tiled Images 12.5 Fractals 13. Collections 13.1 Collections and Data Structures 13.2 Dynamic Representations 13.3 Linear Collections 13.4 Non-Linear Data Structures 13.5 The Java Collections API Appendix A: Glossary Appendix B: Number Systems Appendix C: The Unicode Character Set Appendix D: Java Operators Appendix E: Java Modifiers Appendix F: Java Coding Guidelines Appendix G: JavaFX Layout Panes Appendix H: JavaFX Scene Builder Appendix I: Regular Expressions Appendix J: Javadoc Documentation Generator Appendix K: Java Syntax Appendix L: Answers to Self-Review Questions Index

978-0134462028


Java (Computer program language)
Object-oriented programming (Computer science)

005.117 LE JA